2017 szakmai érettségi programozás: A hetedik feladatra valami könnyebb és egyszerűbb megoldást kerestem, de nem találtam?
def HianyosNev (oszlop1, oszlop2) : oszlop1=str (oszlop1) if 'i' in oszlop2 and 'pecsetelohely' not in oszlop1: return True else: return False print ('7. feladat: Hiányos állomásnevek: ') VanHianyos=False for sor in adatok: oszlop=sor. Split (';') if HianyosNev (oszlop[1], oszlop[5]) : VanHianyos=True print ('\t', oszlop[1]) if not VanHianyos: print ('Nincs hiányos állomásnév! ') Erre jutottam. Meg lehetne-e oldani True/False nélkül? Ja és Pythonban!
7. feladat: Keresse meg és írja ki a minta szerint a képernyőre a hiányos állomásneveket! Ha nincs hiányos állomásnév az adatokban, akkor a „Nincs hiányos állomásnév!” felirat jelenjen meg!
Jól van ez így megoldva. Nyugodtan benne hagyhatod a boolean-okat.
Vagy ha akarod kicserélheted a boolean-t integer-re is.
Például így:
def HianyosNev (oszlop1, oszlop2) :
. oszlop1 = str(oszlop1)
. if ('i' in oszlop2) and ('pecsetelohely' not in oszlop1):
. . return True
. else:
. . return False
print ('7. feladat: Hiányos állomásnevek: ')
HianyosokSzama = 0
for sor in adatok:
. oszlop = sor.split(';')
. if HianyosNev(oszlop[1], oszlop[5]) :
. . HianyosokSzama += 1
. . print ('\t'+oszlop[1])
if HianyosokSzama == 0:
. print ('Nincs hiányos állomásnév! ')
Ezt az elágazást felírhatod egyszerűbben így is:
def HianyosNev (oszlop1, oszlop2) :
. oszlop1 = str(oszlop1)
. return ('i' in oszlop2) and ('pecsetelohely' not in oszlop1)
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!