Sonderzeichen in Python?
Hi, ich habe ein Script gemacht, was eine Datei liest und dann den Inhalt der Datei schreibt. Das Problem ist, es kann keine Sonderzeichen wie ä, ö oder ü schreiben.
Code:
import pyautogui
import time
import sys
import os
f = open(input('Dateiname: '), 'r')
zeitabstand = input('Zeitabstand zwischen den Buchstaben (z.B 0.1): ')
zeitabstand = float(zeitabstand)
print('Es wird gestartet...')
for letter in f:
pyautogui.typewrite(letter, interval=zeitabstand)
input('Fertig!')
Vielen Dank im Voraus
1 Antwort
Kopiere den jeweiligen Buchstaben in die Zwischenablage und füge ihn mit Ctrl+V ein. Geht so:
import pyautogui
import pyperclip
#Deine restlichen Bibliotheken
#Open, Input und das ganze Zeugs
for letter in f:
pyperclip.copy(letter)
pyautogui.hotkey("ctrl", "v")
sleep(zeitabstand)
Danke, es funktioniert :). Aber geht es irgendwie das man zwischen jedem Buchstaben einen Zeitabstand hat, da es jeden Satz kopiert?
Oh, also ist die Variable letter immer ein ganzes Wort, verstehe ich das richtig?
Du könntest das jeweilige Wort (also die Variable letter) in ein Char-Array umwandeln und dann eine weitere for-schleife machen, die über alle chars in dem Array geht.
das geht mit
for letter in list(word)
Sähe dann so aus (habs noch nicht getestet) :
import pyautogui
import pyperclip
import time
import sys
import os
f = open(input('Dateiname: '), 'r')
zeitabstand = input('Zeitabstand zwischen den Buchstaben (z.B 0.1): ')
zeitabstand = float(zeitabstand)
print('Es wird gestartet...')
for line in f:
for letter in list(line):
pyperclip.copy(letter)
pyautogui.hotkey("ctrl", "v")
time.sleep(zeitabstand)
input('Fertig!')
Bitteschön. Klappts wie gewünscht? :)
Lerne Python erst seit vorgestern, da kann mir schnell mal ein Fehler unterlaufen xD
Anscheinend kannst du einfach
for letter in line:
machen, Anstatt dem
for letter in list(line):
Das list() braucht man wohl nicht.
Edit: die letzte Zeile muss
heissen.