10-3 訪客:編寫一個程序,提示用戶輸入其名字;用戶作出響應后,將其名字寫入到文件guest.txt 中。
編寫Python代碼:
1 username = input("Please enter your name: ") 2 filename = 'guest.txt' 3 4 with open(filename, 'w') as name: 5 name.write(username)
10-4 訪客名單:編寫一個while 循環,提示用戶輸入其名字。用戶輸入其名字后,在屏幕上打印一句問候語,並將一條訪問記錄添加到文件guest_book.txt 中。確保這個文件中的每條記錄都獨占一行。
1 filename = 'guest_book.txt' 2 print("Enter 'q' when you are finished. ") 3 4 while True: 5 username = input("What's your name? ") 6 if username == 'q': 7 break 8 else: 9 with open(filename, 'a') as name: 10 name.write(username + "\n") 11 print("Hi " + username + ",you've been added to the guest book." )
10-5 關於編程的調查:編寫一個while 循環,詢問用戶為何喜歡編程。每當用戶輸入一個原因后,都將其添加到一個存儲所有原因的文件中。
1 filename='programming_poll.txt' 2 responses = [] 3 while True: 4 response = input("\nWhy do you like programming? ") 5 responses.append(response) 6 7 continue_poll = input("Would you like to let someone else respond? (y/n)") 8 if continue_poll == 'n': 9 break 10 11 with open(filename, 'a') as f: 12 for response in responses: 13 f.write(response + '\n')
調用open()方法時,需要提供兩個實參:文件名(file)和模式(mode)
'w'表示寫入模式,若要寫入的文件不存在,則會自動創建,若要寫入的文件已經存在,Python在返回文件對象之前會清空該文件。
'r'表示只讀模式,若不傳遞mode參數,默認會以只讀'r'打開文件
'a'表示附加模式,若要操作的文件不存在,則會自動創建,若文件已經存在,則會在末尾追加要寫入的內容。