Python – die besten Beiträge

Bin ich vielleicht zu dumm, um Programmieren zu lernen?

Ich habe vor ein paar Wochen mit Python angefangen. Ich hatte die Jahre davor schon sehr oft mit anderen Programmiersprachen experimentiert, aber es nie durchgezogen. Das möchte ich jetzt ändern. Durch das damalige Experimentieren, hatte ich schon ein bisschen Vorkenntnis. Also wie Variablen funktionieren, wie Funktionen funktionieren, Klassen etc. Daher habe ich mich nicht all zu lange mit den Python Basics beschäftigt.

Nun zum eigentlichen Thema.

Immer wenn ich mich an ein neues Projekt wage, verstehe ich davon meistens überhaupt nichts.

Das letzte Projekt war z.B. ein Shutdown Timer. Das ganze habe ich recht einfach umsetzen können, bis ich dann allerdings auf die Idee kam, dass ein GUI ganz nett wäre. Also habe ich ein wenig geforscht und bin dann auf das Modul Tkinter gestoßen.

Da fängt es dann an. Ich versuche mir die Docs des Moduls durchzulesen, verstehe aber nur Bahnhof. Ich brauche dann einen Beitrag der mir das ganze einfach und verständlich erklärt, oder ein YouTube Tutorial. Ich bekomme es nicht hin, die nötigen Informationen aus den Docs zu finden. Ich fühle mich dann extrem überfordert. Wenn ich kein Tutorial oder ähnliches habe, brauche ich Stunden um ein paar Zeilen Code zu verstehen. Das erreiche ich halt dann durch ewiges Googlen.

Bin ich vielleicht einfach zu Doof? Die Docs sind ja da, um sie zu verstehen. Aber ich raff da meistens nichts.

programmieren, Python

Python wie löse 'NoneType' object is not subscriptable?

Hallo!

Ich schreibe ein kleines Pythonprogramm, das als Web Crawler fungieren soll.Leider erhalte ich in Zeile 36 ein Fehler:

  brand = make_rating_sp[0].img["title"].title()
TypeError: 'NoneType' object is not subscriptable

Leider, finde ich keine Lösung. Wie könnte ich diesen Fehler lösen? Danke im Voraus!

make_rating_sp[0].img is None.

from bs4 import BeautifulSoup as soup  # HTML data structure
from urllib.request import urlopen as uReq  # Web client

# URl to web scrap from.
# in this example we web scrap graphics cards from Newegg.com
page_url = "http://www.newegg.com/Product/ProductList.aspx?Submit=ENE&N=-1&IsNodeId=1&Description=GTX&bop=And&Page=1&PageSize=36&order=BESTMATCH"

# opens the connection and downloads html page from url
uClient = uReq(page_url)

# parses html into a soup data structure to traverse html
# as if it were a json data type.
page_soup = soup(uClient.read(), "html.parser")
uClient.close()

# finds each product from the store page
containers = page_soup.findAll("div", {"class": "item-container"})

# name the output file to write to local disk
out_filename = "graphics_cards.csv"
# header of csv file to be written
headers = "brand,product_name,shipping \n"

# opens file, and writes headers
f = open(out_filename, "w")
f.write(headers)

# loops over each product and grabs attributes about
# each product
for container in containers:
    # Finds all link tags "a" from within the first div.
    make_rating_sp = container.div.select("a")

    # Grabs the title from the image title attribute
    # Then does proper casing using .title()
    brand = make_rating_sp[0].img["title"].title()

    # Grabs the text within the second "(a)" tag from within
    # the list of queries.
    product_name = container.div.select("a")[2].text

    # Grabs the product shipping information by searching
    # all lists with the class "price-ship".
    # Then cleans the text of white space with strip()
    # Cleans the strip of "Shipping $" if it exists to just get number
    shipping = container.findAll("li", {"class": "price-ship"})[0].text.strip().replace("$", "").replace(" Shipping", "")

    # prints the dataset to console
    print("brand: " + brand + "\n")
    print("product_name: " + product_name + "\n")
    print("shipping: " + shipping + "\n")

    # writes the dataset to file
    f.write(brand + ", " + product_name.replace(",", "|") + ", " + shipping + "\n")

f.close()  # Close the file
programmieren, Informatik, Python, Python 3

Wie kann ich nur 3 bestimmte Ordner durchsuchen in python?

Hallo Community,

Ich habe heute eine Aufgabe bekommen und habe schon sämtliche seiten, Foren and whatever durchsucht aber ich finde nichts.

Wahrscheinlich für die Profis ganz leicht für mich aber nicht ^^

Meine Aufgabe ist es meine Dateiliste zu erweitern und zwar:

das es nur maximal x unterverzeichnisse durchsucht ( z.b. suche in C:\azubi in c:\azubi\wrk\dateiliste soll er noch suchen aber wenn dort dann unterverzeichnisse sind dann soll er die ignorieren c:\azubi\wrk\dateiliste\src\test.py darf er dann nicht finden

Mein Programm

print( "HELLO WORLD!" )

from pathlib import Path import time  import os.path import pathlib

p="C:/azubi/wrk"

def get_paths(root='C:/azubi/wrk', pattern='*', recursive=True):          p = Path(root)               print("check {}".format( p ) )               if recursive:         return p.rglob(pattern)                       return p.glob(pattern)

def main():
    print('Dateien mit Endung .py')     for py_file in get_paths( pattern = '.py', 
                              root = 'C:/azubi/wrk/dateiliste' 
                            ):
        print(py_file, "Änderungsdatum: ",time.ctime(os.path.getmtime(p)), "Gröse: ", os.path.getsize(p))
        
main()

die Ausgabe:

C:\azubi\wrk\dateiliste\Edit2.py.py Änderungsdatum:  Fri Apr 24 12:57:56 2020 Gröse:  4096
C:\azubi\wrk\dateiliste\Edit4.py Änderungsdatum:  Fri Apr 24 12:57:56 2020 Gröse:  4096

Diese Angaben sollen nicht ausgegeben werden:

C:\azubi\wrk\dateiliste\src\test.py Änderungsdatum:  Fri Apr 24 12:57:56 2020 Gröse:  4096
C:\azubi\wrk\dateiliste\src\dateiliste\src\test.py Änderungsdatum:  Fri Apr 24 12:57:56 2020 Gröse:  4096
C:\azubi\wrk\dateiliste\src\dateiliste\src\test_1.py Änderungsdatum:  Fri Apr 24 12:57:56 2020 Gröse:  4096

die unteren Drei ausgaben sollen nicht ausgegeben werden da er nach der \Dateiliste die Unterverzeichnisse ignoriert werden sollen:

Danke für die Hilfe

Gruß Marius

Computer, Technik, programmieren, Informatik, Python, Technologie

Meistgelesene Beiträge zum Thema Python