Python中的文件使用建議使用
with open(filename, "r") as f: 的形式進行文件操作,如果忘記關閉文件指針的話,他會幫你自己關閉文件,
如果使用原來的方式 f = open(filename, "w") 打開文件,在程序終止的時候,Python雖然說會幫你自動關閉所有文件對象,但是對於 w 模式打開的文件,若不明確關閉,再次打開就會發生錯誤
打開的幾種模式:
- r (用於從文件讀取數據)
- w(用於向文件寫入數據)
- a (用於向文件追加新內容)
python對於文件的讀寫很方便,但是對於文件的格式化讀取有點困難,一般是將文件對象放入循環,進行一行一行的數據進行讀取,讀取出來的字符串使用 strip() 去掉兩端多余的空格,使用 split() 進行分割存入列表中,(PS:此時列表中的元素全部是字符串,如果是數字的話,請轉化為數字之后,在進行操作),
在向文件中寫數據也是同樣的道理,只可以寫入字符串類型的數據,所以需要將數值類型的數字轉化為字符串在進行數據的寫入。
出題的時候,在使用 for i in range(2) 進行循環操作的時候,發現在 Python 的 for 循環中,沒有辦法改變循環變量;使用 while 循環即可。
for 循環和 while 是可以相互進行轉化的。而在 Python 中刪掉了do {} while 循環,只存在 for 循環和 while 循環。對於 for 循環和 while 循環來說,比 C/C++ 又強大了一些,可以在 while 循環和 for 循環后面添加 else語句,當循環正常結束的時候,則執行此語句,如果循環不正常結束,比如使用 break 強制跳出循環,則不會觸發 else 語句。
#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author:Ice_image
age_of_ice = 32
count = 0
for i in range(3):
guess_age = int(input("Guess age:"))
if guess_age == age_of_ice:
print("yes, you got it.")
break
elif guess_age > age_of_ice:
print("think smaller...")
else:
print("think bigger!")
count += 1
else:
'''
for循環正常結束才會執行
'''
print("you have tried too many times..fuck off")
