Python - načtení obsahu souboru

beer

  • *****
  • 729
    • Zobrazit profil
Python - načtení obsahu souboru
« kdy: 24. 05. 2017, 17:42:40 »
V pythonu se moc nevyznám, rád bych ve skriptu použil načtení obsahu souboru, se kterým bych pak mohl pracovat.

Kód: [Vybrat]
def get_whois():
    open('/cesta/whois.txt', encoding='utf-8')

Kód: [Vybrat]
get_whois()
tohle mi nefunguje, co dělám špatně?


Ivan Nový

Re:Python - načtení obsahu souboru
« Odpověď #1 kdy: 24. 05. 2017, 17:54:13 »
V pythonu se moc nevyznám, rád bych ve skriptu použil načtení obsahu souboru, se kterým bych pak mohl pracovat.

Kód: [Vybrat]
def get_whois():
    open('/cesta/whois.txt', encoding='utf-8')

Kód: [Vybrat]
get_whois()
tohle mi nefunguje, co dělám špatně?

Kód: [Vybrat]
def get_whois():
    with open('/cesta/whois.txt', encoding='utf-8') as f
          return f.read()

Kód: [Vybrat]
get_whois()

3ugeene

Re:Python - načtení obsahu souboru
« Odpověď #2 kdy: 24. 05. 2017, 17:55:06 »
Tyjo, takhle se dneska programuje? Co takhle si najit nejaky zakladni info o otevirani souboru?


Kód: [Vybrat]
with open('filename') as f:
    lines = f.readlines()

beer

  • *****
  • 729
    • Zobrazit profil
Re:Python - načtení obsahu souboru
« Odpověď #3 kdy: 24. 05. 2017, 18:29:24 »
Jedna variatna hlásí:

IndentationError: expected an indented block                                                                     

druhá

yntaxError: invalid syntax

Jo, je tam python 2,7

gll

Re:Python - načtení obsahu souboru
« Odpověď #4 kdy: 24. 05. 2017, 18:35:37 »
Kód: [Vybrat]
def get_whois():
    with open('/cesta/whois.txt', encoding='utf-8') as f
          return f.read()

Kód: [Vybrat]
get_whois()

chybí dvojtečka

Kód: [Vybrat]
def get_whois():
    with open('/cesta/whois.txt', encoding='utf-8') as f:
          return f.read()


Bugs

Re:Python - načtení obsahu souboru
« Odpověď #5 kdy: 24. 05. 2017, 20:12:53 »
Kód: [Vybrat]
def get_whois():
    with open('/cesta/whois.txt', encoding='utf-8') as f
          return f.read()

Toto je syntaxe Pythonu 3, nepůjde mu to spustit. V Pythonu 2.7 je open bez parametru encoding. Ale určitě doporučuju začít programovat v Pythonu 3, pokud je možno ho na stroj doinstalovat.

Ondrej

Re:Python - načtení obsahu souboru
« Odpověď #6 kdy: 25. 05. 2017, 13:56:18 »
google neznas? Vubec toho tam neni trilion.

beer

  • *****
  • 729
    • Zobrazit profil
Re:Python - načtení obsahu souboru
« Odpověď #7 kdy: 25. 05. 2017, 15:41:54 »
google neznas? Vubec toho tam neni trilion.

Google znám, ale neznám Python.

Kód: [Vybrat]
line 75

    if __name__ == "__main__":

    ^                                         

IndentationError: expected an indented block

Co to způsobuje?


   

snuff

Re:Python - načtení obsahu souboru
« Odpověď #8 kdy: 25. 05. 2017, 15:56:04 »
indented block znamena, ze mas zle "odsadenie"  v kode..
V pythone nemas begin a end, ale ze kod patri k podmienke if, alebo k cyklu sa urcuje pomocou toho, ze ma od zaciatku riadku rovnaky pocet medzier...

Nespravne:


if condition:
do this
else:
do this


Spravne:
if condition:
    do this
else:
    do this

gll

Re:Python - načtení obsahu souboru
« Odpověď #9 kdy: 25. 05. 2017, 15:58:40 »
Kód: [Vybrat]
line 75

    if __name__ == "__main__":

    ^                                         

IndentationError: expected an indented block

Co to způsobuje?


 

za : musí být odsazený blok, nějaký příkaz nebo jen pass.

Kód: [Vybrat]
if __name__ == "__main__":
    pass

beer

  • *****
  • 729
    • Zobrazit profil
Re:Python - načtení obsahu souboru
« Odpověď #10 kdy: 26. 05. 2017, 17:51:04 »
Díky

Ondrej

Re:Python - načtení obsahu souboru
« Odpověď #11 kdy: 26. 05. 2017, 19:30:49 »
google neznas? Vubec toho tam neni trilion.

Google znám, ale neznám Python.

Kód: [Vybrat]
line 75

    if __name__ == "__main__":

    ^                                         

IndentationError: expected an indented block

Co to způsobuje?


 
Tak očividně neznáš, jinak by ses neptal na tyhle věci.

ByCzech

  • *****
  • 1 865
    • Zobrazit profil
    • E-mail
Re:Python - načtení obsahu souboru
« Odpověď #12 kdy: 26. 05. 2017, 20:54:30 »
Koukám že na trhu vyloženě chybí kniha "Jak se stát programátorem snadno a rychle" ;D

(uetoyo) někdy haha

Re:Python - načtení obsahu souboru
« Odpověď #13 kdy: 26. 05. 2017, 21:04:55 »
Koukám že Python použil svou obranu: odsazení. Programovat stylem pokus --omyl, není dobrá strategie.

beer

  • *****
  • 729
    • Zobrazit profil
Re:Python - načtení obsahu souboru
« Odpověď #14 kdy: 26. 05. 2017, 21:14:37 »

Tak očividně neznáš, jinak by ses neptal na tyhle věci.


Poslouchej, a ty sem píšeš vlastně proč? Abys pomáhal, nebo aby sis zvyšoval sebevědomí na ostatních, jakej si borec? UTFG píše na fórech jen d*.. Představ si, že sem to vyhledával a byly tam takové rady jako mix tabulátorů a mezer, většina výsledků v angličtině, nebo nějaké sáhodlouhé články. OK, tak jsem zkoušel nahrazovat v dokumentu tabulátory mezerama, ale co konkrétně je tam špatně, jsem z toho nepochopil a pochopil jsem to až z odpovědi zde na fóru. Ty přijdeš, a neporadíš, jen útočíš. Ale nejsi zde sám. Jsou tací, co poradí, ale zároveň dodají něco, co jim dává pocit převahy.