Dies ist mein erster Versuch, etwas in Python zu schreiben. Ich verstehe nicht, warum der Text in die nächste Zeile geht. Ich möchte es sein:Text in die nächste Zeile verschieben Python 3.4
Möchten Sie "Ereignis" löschen?
Y oder N
Aber es druckt als:
Möchten Sie löschen möchten "event
"? Y oder N
Dank
# picks a random string from ideas34.txt
event = random.choice(open('ideas34.txt', 'r').readlines())
choice = int(input('\n' "What would you like to do?" '\n' "1 Random event" '\n' "2 Add a new event" '\n'
"3 Show all events" '\n' "4 Quit" '\n'))
# prints a random event from ideas34.txt
if choice == 1:
print(event)
d = input("Would you like to delete " "\"" + event + "\"? \n Y or N" '\n')
# deletes the event picked
if d == 'Y' or d == 'y':
f = open('ideas34.txt', 'r')
a = [event]
lst = []
for line in f:
for word in a:
if word in line:
line = line.replace(word, '') # deletes event picked from ideas34.txt
lst.append(line)
f.close()
f = open('ideas34.txt', 'w')
for line in lst:
f.write(line)
f.close()
Mai b coz Sie haben '\ n' vorher? Y oder N –
Hinweis: '.readlines()' behält die Zeilenumbrüche in den gelesenen Zeilen bei. Es gibt ein paar Möglichkeiten, um damit umzugehen, aber werfen Sie einen Blick auf die Methoden '.strip' und' .rstrip' des 'str'-Typs. –
@PM 2Ring Danke, das war es. 'event.rstrip()' hat den Job erledigt. – catroaring