Fórum Root.cz
Hlavní témata => Vývoj => Téma založeno: Ivan Kovac 20. 01. 2019, 01:20:27
-
Asi je to uz pokrocilov hodinov ale neviem si dat rady s tymto v pythone 3
def load_nodes():
loadfile = open("nodelist.txt", "r")
nodelist = loadfile.readline()
values = nodelist
print (values)
lines = text_file.read().split(',')
nodes = values.get('nodes').replace(" ", "").split(',')
vstup je
127.0.0.1:5001,127.0.0.1:5000,127.0.0.1:8080,
ale hadze mi to chybu attribute error 'str' object has no attribute 'get' preco?
Dakujem
-
No lebo string nema metodu "get".
Vies vobec co tam robis, pripadne co tou funkciou chces dosiahnut? Lebo pride mi prinajmensom chaoticka :D Ja to vidim nejako takto:
- precitas prvy riadok z toho suboru do stringu "nodelist"
- skopirujes si to do stringu "values" (WTF? naco?)
- potom nejaky uplne odveci riadok
- no a z toho stringu "values" sa nieco snazis dostat s .get('nodes'), ako keby mal byt "values" napr. dictionary, ale je to string
-
zkus vymazat .get('nodes'). Ale podle mě nevíš co děláš.
-
Jak už bylo řečeno, pokoušíš se volat metodu get, kterou string nemá. Jestli se Python teprve učíš, nebo si chceš slepit nějakej skript, můžou se ti hodit třeba stránky https://www.w3schools.com/python, jsou tam takový lehký základy, který se pro začátek můžou hodit.
-
To neni pokrocilou hodinou, ale tim, ze je to nesmyslna prasarna, ktera nema hlavu ani patu. Viz komentare.
Asi je to uz pokrocilov hodinov ale neviem si dat rady s tymto v pythone 3
def load_nodes():
# chybi docstring, ktery by vysvetlil, co to ma delat a co to ma vracet
loadfile = open("nodelist.txt", "r") # lepsi je otvirat soubory s with
nodelist = loadfile.readline() # nacitas jen prvni radek, to je to, co chces?
values = nodelist # zbytecne
print (values)
lines = text_file.read().split(',') # nesmysl, text_file neni ve funkci definovany, s vysledkem se nic nedela
nodes = values.get('nodes').replace(" ", "").split(',') # values je prvni radek souboru, nema metodu get, zbytek nemuze fungovat
# funkce nic nevraci
vstup je
127.0.0.1:5001,127.0.0.1:5000,127.0.0.1:8080,