Ezt hogy lehet megcsinálni python3-ban?
Kérje a felhasználótól a nevét és a nemét (F vagy N) . Ezektől az adatoktól függően írassa ki a
felhasználó nevét és « Úr » at vagy « Asszony » t.
ha azt akarok hogy a listnak a második elemét írja ki akkor kiírja a második karaktert
x=["a","b"]
x=input("nev,nem")
print(x)
ha ezt a listás bigyót megérteném utána menne a dolog az if-el meg ezekkel :)
x=[]
x=input("nev,nem ")
print("Tisztelt",x[0])
>>>
nev,nem ati,f
Tisztelt a
>>>
hol a baj?
nev=input("Mi a neved? ")
nem=input("Mi a nemed? (f/n) ")
if nem=="f":
print("Tisztelt",str(nev),"Úr!")
if nem=="n":
print("Tisztelt",str(nev),"Hölgy!")
else:
print("HIBA")
így megy de én úgy szeretném hogy lehetőleg a két változót egyszerre adjuk meg vesszővel elválasztva :)
A split(sep) string függvénnyel fel lehet darabolni a stringet a separátor mentén.
pl: s = "Ez itt a gyakori kerdesek"
t = s.split(" ")
Akkor a t az egy tömb lesz: ["Ez", "itt", "a", "gyakori", "kerdesek"] ha ennek kéred la a t[3] pedig a "gyakori" lesz.
x=input("nev,nem")
print(x)
Az x értéke egy string lesz, ami egy karaktersorozat (tömb). Így ha indexekkel akarok elérni, a karaktereket éred el.
Próbáld meg splittelni a stringet vesszőre, így lesz egy tömböt amiből kiindulhatsz.
A 'nem' eldöntését nem feltétlenül kell hogy if-el old meg, tedd be a megszólításokat egy asszociatív tömbbe:
megszol = { 'F': "Úr", 'N': "Asszony" }
így kapásból el tudod érni. Használd a nyelv előnyeit.
Köszi a válaszokat! Ezt az asszociatív tömböt még nem ismerem :/ előbb utóbb majd rjövök arra is ;)
így néz most ki a progi:
x=input("Írd be a nevedet és a nemedet(f/n) szóközzel elvlasztva! :")
y=x.split(" ")
if y[2]=="f":
print("Üdv Tisztelt",y[0],y[1],"Úr!")
if y[2]=="n":
print("Üdv Tisztelt",y[0],y[1],"Asszony!")
else:
print("Kérek vezeték és kereszt nevet! pl.: Kis Pista f")
Ügyes!
Kis gondolat ébresztő:
a.) Mi van ha valaki azt adja meg, hogy "Pista F"
b.) Mi van ha valaki azt adja meg, hogy "Kovács Pista f"
c.) Mi történik ha nem ír szóközt? ("PistaF") (a pythonban sem szép, de más programok egyenesen elhasalnának rajta)
név, nem = input("Adja meg a nevét, és a nemét (F / N) szóközzel elválasztva: ").split(' ')
if (nem == "F"):
print(név, "Úr")
else:
print(név, "Asszony")
Legegyszerűbb megoldás személy véleményem szerint
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, 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!