Hogy kell fájlból beolvasni/fájlba kiírni Pythonban?
Találtam egy tutorialt a pythonhoz, ami szerint a következőképp lehet beolvasni egy fájl tartalmát, majd kiíratni azt:
f=open('proba.txt', 'r')
f.readline()
Ugye előzetesen megcsináltam egy proba.txt fájlt, amit ugyanoda mentettem el, ahova magát a programot. Az oké, hogy felismeri, hogy van ott valami, viszont nem ír ki semmit (csak annyit, hogy "A folytatáshoz nyomjon meg egy billentyűt..."), és nem tudok rájönni, hogy ez miért lehet.
A fájlba való kiíratásig még nem jutottam el, de gondolom hasolóképp működik, tehát felteszem, hogy az se működne a leírtak szerint.
Ja, és még arra lennék kíváncsi, hogy hogy lehet objektumként/változóként felvenni ennek a fájlnak a különböző sorait, esetleg szavait?
A választ előre is köszönöm!
Egyrészt
print f.readline()
mert amúgy nem fogja kiírni, az olvasás megtörténik, de nem kezdesz semmit a kapott stringgel. Másrészt ez csak akkor működik így, ha onnan is indítod, nem csak ott van.
Sorok felvétele: végigmész ciklussal (pl
arr = []
while line = f.readline:
arr.append(line)
/pl)
Köszi, sikerült közben kiíratni a képernyőre, mondjuk nagyon úgy rémlik, mintha ezt már próbáltam volna egyszer, mégse volt jó... Na mindegy. A többit még nem volt alkalmam kipróbálni.
Még annyi, hogy Geany-ben csinálom a dolgokat, illetve letöltöttem otthon a Python 2.7-et (mert azt ajénlotta a tanár, és itt, a suliban is az van a gépeken), telepítettem, de amikor próbálok elindítani egy programot otthon, akkor kiírja, hogy fogalma sincs, mi az a "python" (ahhoz képest, hogy magától beírta a fordítóba, amikor valami.py néven mentettem el a programot...), így le sem futtatja, amit írtam, viszont itt, a suliban igen. Van esetleg valami további dolog, amit telepítenem kéne, vagy ilyesmi? A további választ is előre köszönöm!
Na, még annyi kéne, hogy...
Az a feladat tulajdonképpen, hogy egy szöveges fájlban vannak termékmegnevezések, és alatta arra a termékre különböző licitek, tehát valahogy így:
asztal
5200
3800
szék
870
990
550
sámli
349
A feladat pedig az lenne, hogy egy másik fájlba ki kéne iratni a termékeket, mellettük pedig a rájuk érkezett legmagasabb licitet, tehát valahogy így:
asztal 5200
szék 990
sámli 349
És nem iagzán tudom, hogy azt hogy kéne megoldani, hogy a python felismerje beolvasáskor, hogy melyik sor tartalmaz számokat, és melyik szöveget... Vagy hogy így egyáltalán hogy kéne ezt az egészet. Bocs, ha nagyon fárasztó vagyok, de még csak most kezdtem tanulni a pythont.
Minden szöveg, amikor a file-ból beolvasod!
Mondjuk beolvasol valamit az x változóba.
try:
__y=int(x)
except ValueError:
__y=-99999
A __ helyére szóközöket írj, az a behúzás! A -99999 egy olyan szám, amit biztosan nem olvashatsz be. Ha x szám, y-ban lesz az eredmény.
Vagy:
try:
__y=int(x)
__SZAM=True
except ValueError:
__SZAM=False
Ez megpróbálja számmá alakítani, és ha nem megy, akkor az except ágra kerül.
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!