Hallo Leute,
beschäftige mich erst seit einigen Tagen mit Python und bin sehr positiv erstaunt über die Möglichkeiten. Genial
Zu meiner Aufgabenstellung:
Möchte in einem Fenster (Tkinter) bestimmte Daten eingeben können und man soll das Verzeichnis der Wordtemplats (filedialog.askopenfilename) und des Speicherorts der beschriebenen Dateinen (filedialog.askopenfilename) auswählen können. Die Eingabe soll dann überprüft werden in dann in Textbausteinen in verschiedenen Wordtemplates hineingeschrieben und die Dateien abgeschpeichert werden in jenem Ordner, welcher zuvor ausgewählt wurde.
Nun zu meiner Frage:
-Wie kann ich bestimmte Textbausteine in einer Worddatei ansprechen?
Vielen Dank für euerer Hilfe.
Vielleicht habt ihr noch zusätzliche Tipps oder Anregungen zur Lösung des Problems mit Python.
Grüße
Textbausteine Word
Google mal "python und microsoft word" - also 2. Eintrag ist ein Video zum Thema Templates in Word und erster Eintrag war ein Modul, um Word anzusprechen...
Oh super, vielen Dank für den Tipp.
Bei meiner ersten Suche hatte ich nicht "passendes" gefunden...uff
Durch deinen Tipp bin ich auf diesen Link gekommen: http://pbpython.com/python-word-template.html
Werde es gleich mal versuchen.
Danke nochmals
Bei meiner ersten Suche hatte ich nicht "passendes" gefunden...uff
Durch deinen Tipp bin ich auf diesen Link gekommen: http://pbpython.com/python-word-template.html
Werde es gleich mal versuchen.
Danke nochmals
Für meine Dateneingabe brauche ich Eingagbefelder. Habe unter andeem diese Seite gefunden: https://www.python-kurs.eu/tkinter_entry_widgets.php. Da ich für meine Aufgabenstellung mehrere Eingabefelder brauche, fand ich das Skript auf der gleichen Seite interessant. Schade, dass es nicht kommentiert ist. Somit verstehe ich den Code nicht. Könnte mir jemand helfen den Code zu verstehen. Wäre euch sehr dankbar.
Code: Alles auswählen
#!/usr/bin/python3
from tkinter import *
fields = 'Last Name', 'First Name', 'Job', 'Country'
def fetch(entries):
for entry in entries:
field = entry[0]
text = entry[1].get()
print('%s: "%s"' % (field, text))
def makeform(root, fields):
entries = []
for field in fields:
row = Frame(root)
lab = Label(row, width=15, text=field, anchor='w')
ent = Entry(row)
row.pack(side=TOP, fill=X, padx=5, pady=5)
lab.pack(side=LEFT)
ent.pack(side=RIGHT, expand=YES, fill=X)
entries.append((field, ent))
return entries
if __name__ == '__main__':
root = Tk()
ents = makeform(root, fields)
root.bind('<Return>', (lambda event, e=ents: fetch(e)))
b1 = Button(root, text='Show',
command=(lambda e=ents: fetch(e)))
b1.pack(side=LEFT, padx=5, pady=5)
b2 = Button(root, text='Quit', command=root.quit)
b2.pack(side=LEFT, padx=5, pady=5)
root.mainloop()
@Mountain: vergiss auch gleich wieder, dass es die Seite python-kurs.eu gibt, da wird sehr falsches und sehr schlechtes Python vermittelt. Du hast immerhin das Beispiel gefunden, wo auf globale Variablen verzichtet wird. Dagegen vermeide *-Importe, da hat man nicht unter Kontrolle, was alles in den eigenen Namensraum importiert wird. Üblicherweise schreibt man `import tkinter as tk` und spricht alle tk-Namen über tk.xxx an. Eingerückt wird generell mit 4 Leerzeichen pro Ebene, nicht 3.
Was verstehst Du konkret nicht? Für GUI-Programmierung braucht man eigentlich schon gute OOP-Kenntnisse, ist also nicht das beste Thema zum Einstieg.
Was verstehst Du konkret nicht? Für GUI-Programmierung braucht man eigentlich schon gute OOP-Kenntnisse, ist also nicht das beste Thema zum Einstieg.
@Sirius3: Vielen Dank für deine Hinweise und Tipps. Wo bekomme ich deiner Meinung nach gute Infos zu Python? Auch das was die imports betrifft? Derzeit stöpere ich im www auf gut Glück umher und mache mir keine großen Gedanken wenn ich das Ergebnis stimmt. Wie ich dich aber jetzt verstanden habe gibt es bei den imports zb einiges zu beachten.
Habe den ganzen Quellcode nicht verstanden. Anscheinend sollte es mit dem Code "leicht" möglich sein viele Textfelder zu händeln aber ich verstehe nur Bahnhof... Kannst du mir ggf. einige Tipps geben wie ich das Problem (mehrere Texteingabefelder) elegant lösen könnte?
Danke.
Ich seit echt schnell beim sachlichen Antworten - super Forum!!!!
Habe den ganzen Quellcode nicht verstanden. Anscheinend sollte es mit dem Code "leicht" möglich sein viele Textfelder zu händeln aber ich verstehe nur Bahnhof... Kannst du mir ggf. einige Tipps geben wie ich das Problem (mehrere Texteingabefelder) elegant lösen könnte?
Danke.
Ich seit echt schnell beim sachlichen Antworten - super Forum!!!!
@Sirius3: Habe mich mit einem Eingabefeld bereits befasst. Wollte aber nicht zu viel Zeit damit verlieren, denn wie bereits erwähnt brauche ich für mein Projekt mehrere Eingabefelder und wollte das ganze ellegant lösen. So bin ich auf den Link https://www.python-kurs.eu/tkinter_entry_widgets.php gekommen.
Habe derzeit keine speziellen Quellen. Nur google und das Buch "Routineaufgaben mit Python automatisieren" und dieses super Forum.
Welche deutsche gute Literatur könntet ihr empfehlen?
Habe derzeit keine speziellen Quellen. Nur google und das Buch "Routineaufgaben mit Python automatisieren" und dieses super Forum.
Welche deutsche gute Literatur könntet ihr empfehlen?