Hallo zusammen,
ich bin ein blutiger Anfänger in Python und bräuchte bei einem Problem Hilfe.
Ich habe ein URL, die eine Liste im Json-Format hat.
So sieht ein Abschnitt der formattierten Liste aus:
"apm-trn-sapfiaccounting-lxprod-6.5.4-",
"apm-trn-sapfiaccounting-lxprod-6.6.2-",
"backup-default-logs-",
"backup-default-metrics-",
"backup-event-metrics-",
"bdasas-default-",
"bdasas-druid-",
"bdasas-hbase-",
etc.
Nun will ich diese Liste splitten bzw so umformen, dass da nur der erste Teil vor dem " - " steht.
Das kann man wohl mit .split() machen, allerdings verstehe ich nicht so ganz wie ich das umsetzen soll mit der URL.
In den ganzen Beispielen im internet ist da schon ein String gegeben und die werden einfach gesplittet. Ich habe für meinen Fall leider nichts bekommen.
Hier ist der Code, den ich bisher habe, wo ich die URL Abfrage
import requests
import json
r = requests.get('url', verify=False)
data= json.loads(r.text)
filter_list = data["result"]
print(filter_list)
Ich würde mich über eure Hilfe sehr freuen!
.split() Hilfe
-
- User
- Beiträge: 12
- Registriert: Dienstag 14. Januar 2020, 11:30
naja, ich verstehe gerade wirklich nichts und habe keine Ahnung, wie ich weitermachen soll
Je mehr ich lese, desto mehr verwirrter werde ich.
-
- User
- Beiträge: 12
- Registriert: Dienstag 14. Januar 2020, 11:30
data = filter_list.split("-")
for temp in data:
print temp
wenn ich das ausführe, bekomme ich die Fehlermeldung
AttributeError: 'list' object has no attribute 'split'
for temp in data:
print temp
wenn ich das ausführe, bekomme ich die Fehlermeldung
AttributeError: 'list' object has no attribute 'split'
-
- User
- Beiträge: 12
- Registriert: Dienstag 14. Januar 2020, 11:30
leider komme ich gar nicht weiter
-
- User
- Beiträge: 12
- Registriert: Dienstag 14. Januar 2020, 11:30
import requests
import json
import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
r = requests.get(url, verify=False)
data= json.loads(r.text)
filter_list = data["result"]
def split_string(filter_list):
list_string = filter_list.split(' - ')
# return list_string
print (split_string)
ich habe jetzt das hier zusammengebastelt. allerdings funktioniert print() bei mir jetzt nicht bzw das script gibt mir nichts auf die Konsole. Woran kann es liegen?
Danke für eure Hilfe im voraus!
import json
import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
r = requests.get(url, verify=False)
data= json.loads(r.text)
filter_list = data["result"]
def split_string(filter_list):
list_string = filter_list.split(' - ')
# return list_string
print (split_string)
ich habe jetzt das hier zusammengebastelt. allerdings funktioniert print() bei mir jetzt nicht bzw das script gibt mir nichts auf die Konsole. Woran kann es liegen?
Danke für eure Hilfe im voraus!
- __blackjack__
- User
- Beiträge: 13113
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@pythonanfaenger1508: Das sollte sehr wohl etwas auf der Konsole ausgeben, sofern denn `url` definiert wäre. Dann gibt das `print()` die Funktion aus. Was natürlich keinen Sinn macht. Du willst ja wohl eher die Funktion *aufrufen*. Dann müsste die aber auch etwas zurückgeben was das `print()` dann ausgeben kann. Und es macht auch keinen Sinn den Code der ausserhalb der Funktion nicht funktioniert, in eine Funktion zu stecken. Davon bekommen Listen nicht auf magische Weise eine `split()`-Methode. Das ist ja immer noch der gleiche Fehler das so zu versuchen. Du setzt da immer noch den Dosenöffner am Regal an.
Arbeite am besten mal ein Grundlagentutorial durch. Der Umgang mit Grunddatentypen wie Listen, und Kontrollstrukturen, und das definieren und aufrufen von Funktionen sind absolute Grundlagen ohne die man nicht sinnvoll arbeiten kann. In der Python-Dokumentation gibt es beispielsweise so ein Tutorial.
Falls Du danach immer noch nicht klar kommst, zeige bitte ein lauffähiges Beispiel das nicht mit einem `NameError` aussteigt, und dann am besten auch nur Teile die für das Problem benötigt werden. Also eine Liste mit den Werten die Du da bekommst im Programm und keine Abfrage aus dem Netz.
Arbeite am besten mal ein Grundlagentutorial durch. Der Umgang mit Grunddatentypen wie Listen, und Kontrollstrukturen, und das definieren und aufrufen von Funktionen sind absolute Grundlagen ohne die man nicht sinnvoll arbeiten kann. In der Python-Dokumentation gibt es beispielsweise so ein Tutorial.
Falls Du danach immer noch nicht klar kommst, zeige bitte ein lauffähiges Beispiel das nicht mit einem `NameError` aussteigt, und dann am besten auch nur Teile die für das Problem benötigt werden. Also eine Liste mit den Werten die Du da bekommst im Programm und keine Abfrage aus dem Netz.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman