Kezdő python programozás?
Mielőtt lehülyéz valaki, igen kezdő python programozási hibákat akarok megérteni..Több kérdés is van.
1. Hogyan tudnék helyesen lista tartalmat billentyűről feltölteni, "vege" végjelig?
idáig jutok:
list=[]
szo=str(input())
i=0
while(szo!="vege"):
list.append(szo[i])
i+=1
print(list)
Természetesen még az adatbeolvasás lehetőségéig sem jutok el.
Mi van, ha azt akarom, hogy ha nem ütök be semmit csak egy entert, akkor érjen véget?
2. Beütök egy szöveget, és véletlenszerűen nagy illetve kisbetűssé változtatja őket. Stimmel, hogy random-mal kell dolgozni, az is, hogy nyilván új string kell, ami az eredetileg beütöttel dolgozik és alakítja át. De hogyan? pl: ujszo=eredeti[i]*radom[i].upper? Ez tuti nem jó csak találgatok.
Köszi a választ!
list=[]
szo=str(input())
i=0
while(szo!="vege"):
list.append(szo[i])
i+=1
print(list)
Itt egyszer olvasol be egy szót (mivel a beolvasás cikluson kívül van), így a cikluson belül a szo változó nem változik, így a ciklusból kilépő feltételt is bajos teljesíteni (vagy teljesül elsőre, vagy soha). Majd a ciklusban a szo nevű string karaktereivel foglalkozol (szo[i]). Holott te nem a karakterekkel szeretnél foglalkozni, hanem magával a stringgel.
Továbbá a programod azért száll el hibával, mert a (cikluson belül nem változó) szo string i-edik karakterét olvasod, majd lépteted i-t.előbb utóbb I értéke meghaladja a szo stringben tárolt karakterek számát és akkor értelmetlenné válik a kifejezés (pl mi a "cica" szó ötödik karaktere?)
A második példában én úgy állnék neki, hogy végigmennék a szó betűin, minden betűre eldönteném, hogy kis vagy nagybetűs legyen (erre jó trükk, hogy ha azt nézed hogy egy 0 és 1 közötti véletlen szám nagyobb e mint 0.5, és ha igen, akkor legyen nagybetű az adott betű, ellenkezőleg kicsi), majd az előbbi boolean érték alapján meghívnám az adott karaktert kicsivé vagy naggyá varázsoló függvényt.
0. Használj valamilyen kódmegosztó portált - pastebin, hastebin,... - az megtartja az indentálást, és még kódszínezést is ad.
1. Itt egy példa:
amire ügyelj:
* a list egy lefoglalt szó ( [link] ) használd helyette, hogy lista, ha már magyar változóneveket (sic!) használsz.
* a bekért szöveget nem kell karakterlánccá konvertálni, mert már az - lásd: [link]
* ha már szavakat kérsz be, ne a szó egyetlen karakterét tárold el a listában - így az i változó értelmét veszti
* miután a szót eltárolod a listában kérj be új szót
2. "Mi van, ha azt akarom, hogy ha nem ütök be semmit csak egy entert, akkor érjen véget?"
while(szo!=""):
3. Itt egy példa a véletlenszerű nagybetűsítésre:
#4
Bug report:
Adj meg egy szöveget: NAGYBETUS SZOVEGGEL NEM MUKODIK!!!!!!!!!!
A megadott szöveg véletlenszerűen nagybetűssé alakított betűkkel:
NAGYBETUS SZOVEGGEL NEM MUKODIK!!!!!!!!!!
Very big fail: Ez nem bug, ez featúra.
Mint a szkript nevében (és a kimenetben is szerepel!) benne is van: csak "nagybetűsít" (tehát a nagybetűssel is működik!), nem "kisbetűsít" - tehát a feladatát ellátja. Szóval - a fiatalok szóhasználatával élve - LOLXD
"2. Beütök egy szöveget, és véletlenszerűen nagy illetve kisbetűssé változtatja őket."
Igazad van. Azt csinálja amit szeretnél de mégsem azt amit a kérdező kért.
Elfogtam egy nem privát privát üzenetet:
"Szia!
Köszönöm a válaszodat!
Szeretném kérdezni, hogy tudnál-e esetleg konkrét pythonos kérdésekre válaszolni?
Szép napot!"
Szervusz.
Mivel ez egy fórum - aminek célja hogy a felmerülő nem magánjellegű kérdéseket publikusan tegyük közzé, és arra publikus válaszokat kapjunk, hogy így abból mások tanuljanak - így kérlek, tedd közzé a konkrét kérdésed az "Új kérdés" menüpont ( https://www.gyakorikerdesek.hu/uj-kerdes ) segítségével. Köszönöm előre is a többiek nevében is.
További szép napot, neked is.
Kedves utolsó!
Az írásodban van valami, de míg ezt kimásoltad, és leírtad a mondandódat, lehetséges, hogy válasz "igen" vagy "nem" kevesebb ideig tartott volna.
Másodszor szerintem, ha kapsz egy NEKED címzett levelet, még ha a tartalma nem is privát jellegű, az a minimum, hogy nem kürtöljük világgá. Más a gondolkodásunk úgy tűnik.
"de míg ezt kimásoltad, és leírtad a mondandódat, lehetséges, hogy válasz "igen" vagy "nem" kevesebb ideig tartott volna."
Az idő lényegtelen.
A fórum célja a segítségnyújtás, illetve a publikusság révén a megválaszolt kérdés másoknak is további segítséget nyújt.
"Másodszor szerintem, ha kapsz egy NEKED címzett levelet, még ha a tartalma nem is privát jellegű, az a minimum, hogy nem kürtöljük világgá."
Mivel nem szerepelnek benne személyes adatok, "nem privát" tartalmú a kérdés ezért - és az előzőekben említettek miatt - tettem közzé.
"A fórum arra van, hogy írjunk bele, nem pedig társkeresőként szolgál. A fórumba írt kérdéseket és válaszokat mások is olvashatják és tanulhatnak belőle, már csak ezért is jobban megéri az ilyen jellegű segítségkérést publikusan intézni."
Forrás: tutorial.hu - fórum etikett ( [link] )
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
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!