TypeError: ‚type‘ object is not iterable

michi@localhost ~/python $ python reihenzaehler.py 
Traceback (most recent call last):
  File "/home/michi/python/reihenzaehler.py", line 5, in <module>
    for i in range:
TypeError: 'type' object is not iterable

Was ist eine Iteration?
Iteration (von lateinisch iterare ,wiederholen‘) beschreibt allgemein einen Prozess mehrfachen Wiederholens gleicher oder ähnlicher Handlungen zur Annäherung an eine Lösung oder ein bestimmtes Ziel.

In meinem Fehlerfall wurde in einer for-Schleife kein Beginn und Ende angegeben.

start=0
runde=0
fM=6
#gesamt=
for i in range():
        print ("Runde",runde+1,fM,"=","Runden")

korrekt ist es so:

start=0
runde=0
fM=6
#gesamt=
for i in range(1,15):
        print ("Runde",runde+1,fM,"=","Runden")

die zeichenkodierung des html-dokuments wurde nicht deklariert

Geben Sie immer die Zeichencodierung Ihrer Dokumente mittels meta-Element an – entweder mit charset-Attribut oder mit http-equiv– und content-Attributen (der sogenannten Pragma-Direktive). Die Angabe der Zeichencodierung sollte in den ersten 1024 Bytes des Dokuments Platz finden. Setzen Sie diese also am besten gleich hinter das Start-Tag des head-Elements.

<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="utf-8"/>
...

javascript: error NaN

Dieser Fehler heisst eigentlich „Not a Number“

Die globale NaN Eigenschaft ist ein Wert, der Not-A-Number (keine Zahl) repräsentiert.

In modernen Browsern ist NaN eine nicht konfigurierbare und nicht überschreibbare Eigenschaft. Immer wenn dieses nicht der Fall ist, sollte es vermieden werden, diese zu überschreiben.

Der Einsatz von NaN in Programmen ist selten. Es wird als Rückgabewert genutzt, wenn Math Funktionen fehlschlagen (Math.sqrt(-1)) oder wenn der Versuch, eine Zeichenkette in eine Nummer zu konvertieren, fehlschlägt (parseInt("blabla")).

WARNING: The scripts are installed in ‚C:\Users\Michi\AppData\Roaming\Python\Python39\Scripts‘ which is not on PATH.


 WARNING: The scripts pyi-archive_viewer.exe, pyi-bindepend.exe, pyi-grab_version.exe, pyi-makespec.exe, pyi-set_version.exe and pyinstaller.exe are installed in 'C:\Users\Michi\AppData\Roaming\Python\Python39\Scripts' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.

PyInstaller analysiert myscript.py und:

  • Schreibt myscript.spec in denselben Ordner wie das Skript.
  • Erstellt einen Ordner-Build im selben Ordner wie das Skript, wenn es nicht existiert.
  • Schreibt einige Protokolldateien und Arbeitsdateien in den Build-Ordner.
  • Erstellt einen Ordner dist im selben Ordner wie das Skript, falls dieser nicht existiert.
  • Schreibt den ausführbaren myscript-Ordner in den dist-Ordner. Im Ordner dist finden Sie die gebündelte App, die Sie an Ihre Benutzer verteilen.

help in tkinter

from tkinter import Tk
import tkinter as tk
fenster=tk.Tk()
fenster.title("Übersetzung Häkelanleitung")
label1=tk.Label()
eingabe=tk.Text()
eingabe.pack()
label2=tk.Label()
klick=tk.Button(text="Übersetzen", command="uebersetzung")
klick1=tk.Button(text="Exit", command=fenster.destroy)
klick.pack()
klick1.pack()
label2.pack()
label1.pack()
fenster.mainloop()

tkinter – Packer

_tkinter.TclError: cannot use geometry manager pack inside . which already has slaves managed by grid

In diesem Fehlerfall wurden die Packmanager grid und pack in Kombination in in einem Programm angewandt. Es darf immer nur eine Packerart verwandt werden.

Der Packer ist einer der Geometrieverwaltungsmechanismen von Tk. Geometrie-Manager werden verwendet, um die relative Positionierung von Widgets innerhalb ihres Containers festzulegen – ihrem gemeinsamen Master. Im Gegensatz zum umständlicheren Bestücker (der seltener verwendet wird und hier nicht behandelt wird) nimmt der Packer die qualitative Beziehungsspezifikation – oben, links, Füllung usw. – und arbeitet alles aus, um die genauen Bestückungskoordinaten zu bestimmen für dich. Die Größe eines Master-Widgets wird durch die Größe der darin enthaltenen „Slave-Widgets“ bestimmt. Der Packer wird verwendet, um zu steuern, wo Slave-Widgets innerhalb des Masters erscheinen, in den sie gepackt werden. Sie können Widgets in Frames und Frames in andere Frames packen, um das gewünschte Layout zu erzielen. Außerdem wird die Anordnung dynamisch angepasst, um inkrementelle Änderungen an der Konfiguration zu berücksichtigen, sobald sie gepackt ist. Beachten Sie, dass Widgets erst angezeigt werden, wenn ihre Geometrie mit einem Geometriemanager angegeben wurde. Es ist ein häufiger Fehler, die Geometriespezifikation auszulassen und dann überrascht zu sein, wenn das Widget erstellt wird, aber nichts angezeigt wird. Ein Widget wird erst angezeigt, nachdem beispielsweise die pack()-Methode des Packers darauf angewendet wurde. Die Methode pack() kann mit Schlüsselwort-Option/Wert-Paaren aufgerufen werden, die steuern, wo das Widget in seinem Container erscheinen soll und wie es sich verhalten soll, wenn die Größe des Hauptanwendungsfensters geändert wird.

io.UnsupportedOperation: not writable


Traceback (most recent call last):
File "/home/michi/python/2-dict-in-datei.py", line 6, in
print (datei.write(wort))
io.UnsupportedOperation: not writable

Hier wurde die Datei wahrscheinlich nur im Lesemodus geöffnet.

datei=open("liste.txt","r")

Um mit der Datei zu arbeiten muss sie im write Modus geöffnet werden.

datei=open("liste.txt","w")

Hilfe bei Dictonary

I’m trying to create a dictonary that searches for words and adds unknown words to a file. The error index out of range occurs. How can I solve this? I want create a translator. A translator for crochet pattern. The abbreviation from other language like inc=increase should be translatet to Zun = Zunnehmen in german. Thats why i cant use google or so on.+

#/usr/bin/python3
woerter = {}
fobj = open("woerterbuch.txt", "r")
for line in fobj: 
    line = line.strip()
    zuordnung = line.split(" ")
    woerter[zuordnung[0]] = zuordnung[1] 

while True: 
    wort = input("Please insert a word: ")
    if wort in woerter: 
        print("The german word means:", woerter[wort]) 
    else: 
        print("The word is unknown")
        print ("Please insert the translation")
        for engl in woerter:
            fobj.write("{} {}\n".format(engl, woerter[engl]))
fobj.close()        
michi@localhost ~/python $ less woerterbuch.txt 
sc fM inc Zun

try:
import Tkinter as tk
except:
import tkinter as tk

liste={"sc":"fM","inc":"Zun","dec":"Abn"}
def uebersetzung():
wort=str(e1.get())
if wort in liste:
print ("Ja, vorhanden, die Übersetzung ist")
else:
print ("Nein, noch nicht vorhanden")

def popupmsg():
popup = tk.Tk()
popup.wm_title("!")
label = Label(popup, text="Übersetzung:")
label.pack(side="top", fill="x", pady=10)
B1 = Button(popup, text="Okay", command = popup.destroy)
B1.pack()
popup.mainloop()

root = tk.Tk()
root.geometry("300x300")
make Esc exit the program

root.bind('', lambda e: root.destroy())

logo=PhotoImage(file="../../../../home/michi/python/kruemelmonster.png")
w=Label(root,compound=CENTER,image=logo)
w.pack()
e1=Entry(master=root)
e1.pack()
button=tk.Button(master=root,text="Exit", command=uebersetzung)
button.pack()
button1=Button(master=root,text="Übersetzen", command=popupmsg)
button1.pack()
root.mainloop()


SyntaxError: positional argument follows keyword argument

Übersetzungsergebnisse

In Python gibt es zwei Arten von Argumenten: Positionsargumente und Schlüsselwortargumente. Diese Argumente müssen in einer bestimmten Reihenfolge erscheinen, andernfalls gibt der Python-Interpreter einen Fehler zurück. In diesem Leitfaden werden wir über den Fehler „Positionsargument folgt Schlüsselwortargument“ sprechen und warum er ausgelöst wird. Wir sehen uns ein Beispiel-Code-Snippet mit diesem Fehler an, damit wir durchgehen können, wie man es löst. Lass uns anfangen!

Programmiersprachen haben wie die englische Sprache ihre eigenen Regeln. Diese Regeln werden als Syntax bezeichnet. Unser Fehler ist ein Syntaxfehler, was bedeutet, dass wir eine der Regeln zum Schreiben eines Python-Codes nicht befolgt haben. Der nächste Teil unseres Fehlers sagt uns, was diesen Fehler verursacht. In diesem Fall muss unser Code ein Positionsargument haben, das nach einem Schlüsselwortargument erscheint.

Positionsargumente sind Argumente, die an ihren jeweiligen Positionen erscheinen:

def add_numbers(a, b):
	return a + b

Let's call this function:

add_numbers(2, 3)

Seite wird noch ausbebaut …

Unsupported operation :not writeable python

Diese Fehlermeldung weist auf fehlende Rechte zum Schreiben hin. Wenn eine Datei bearbeitet werden soll muss dies über die Option w freigegeben werden. Ein Beispiel :

with open('file.txt', 'r') as file:
    file.write(exDict)

Hier ist die Datei file.txt nur mit Leserechten (r) versehen . Mit w wird die Datei im Schreibmodus geöffnet.

datei_in=open("fin.txt")
datei_out=open("fout.txt","w")
datei_in.close()
datei_out.close()