Kezdőoldal » Számítástechnika » Programozás » Számjegyek cseréje egy számban...

Számjegyek cseréje egy számban, Python?

Figyelt kérdés

Hogyha van egy listám csupa háromjegyű számmal, és azt szeretném, hogy mindegyiknél cserélje fel az utolsó és első számjegyét, azt hogy tudom megcsinálni Pythonban?

Tehát pl van egy ilyen listám:

a=[342, 763, 927]

Ilyet szeretnék kapni:

b=[243, 367, 729]


Valami ilyesmire gondoltam, de tudom, hogy ez egészen sok sebből vérzik:

for i in range(len(a)):

str(a[i])[0] = str(a[i])[2]

str(a[i])


Tudna valaki segíteni? köszönöm szépen.



2021. nov. 23. 19:49
1 2 3 4
 1/32 anonim ***** válasza:
100%

Jó ez, csak még nincs kész. Itt jön az, hogy két értéket hogy lehet felcserélni, pl. x[0] és x[2] értékét. Legyen a tmp egy átmeneti változó. Nem Python, csak az alapelv:

x[0] -> tmp # elmentjük, mert ha felülírod, nem fogod tudni, mi volt

x[2] -> x[0] # átrakjuk az egyik elemet a másikba (az első lépés nélkül itt x[0] elveszne)

tmp -> x[2] # az eredeti x[0] érték megy x[2]-be, ezzel fel vannak cserélve.

2021. nov. 23. 20:09
Hasznos számodra ez a válasz?
 2/32 anonim ***** válasza:
100%
b = [int(str(x)[::-1]) for x in a]
2021. nov. 23. 20:19
Hasznos számodra ez a válasz?
 3/32 anonim ***** válasza:
100%
...Bocsánat, arra kell még figyelni, hogy a Pythonban a string nem módosítható, szóval kicsit még trükközni kell.
2021. nov. 23. 20:20
Hasznos számodra ez a válasz?
 4/32 anonim ***** válasza:
78%
#2 Igen, ez így Python-os, csak az alapelvet így nem fogja megtanulni.
2021. nov. 23. 20:22
Hasznos számodra ez a válasz?
 5/32 anonim ***** válasza:
100%
@2: Nekem is egyből ez ugrott be, csak annyi a gáz ezzel, hogy csak akkor működik, ha mindig 3 számjegyből áll. Szóval jó, de nem általános megoldás, ha az első és az utolsó számjegy cseréje kell.
2021. nov. 23. 20:27
Hasznos számodra ez a válasz?
 6/32 A kérdező kommentje:

Köszönöm a válaszokat, sikerült! Még annyit kérdeznék, hogy a #2-ben azt az egy sort, hogy lehet felírni hosszabban? Mert nem így, erre rájöttem:


for x in a:

b=[int(str(x)[::-1]

2021. nov. 23. 20:39
 7/32 anonim ***** válasza:
100%

Funkcionális megoldás:

[link]

2021. nov. 23. 20:44
Hasznos számodra ez a válasz?
 8/32 anonim ***** válasza:
100%

Iterációs megoldás:

[link]

2021. nov. 23. 20:51
Hasznos számodra ez a válasz?
 9/32 A kérdező kommentje:
Köszönöm!!!
2021. nov. 23. 21:14
 10/32 anonim ***** válasza:
Az első számjegy a szám hányadosa százzal, a második a hányadosa tízzel, a harmadik pedig a maradéka tízzel. Sztringgé alakítás helyett próbálkozhatsz ezzel is.
2021. nov. 23. 22:25
Hasznos számodra ez a válasz?
1 2 3 4

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!