国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

HeadFirstPython學(xué)習(xí)筆記2——文件與異常

2019-11-14 16:59:30
字體:
供稿:網(wǎng)友

文件處理

1.用open()就可以打開文件,但是請注意:文件里有中文請?jiān)O(shè)置編碼,如 :open("filepath","r",encoding="utf-8")本書沒有說明這個,結(jié)果我輸出的都是亂碼,在網(wǎng)上找了好久才發(fā)現(xiàn)解決方法。第二個參數(shù)是文件讀寫模式,詳細(xì)請看下面

  'r'       打開讀取文件(默認(rèn))
    'w'      打開寫入文件,會先清除文件內(nèi)容
    'x'       創(chuàng)建一個新文件不打開寫入
    'a'       如果文件存在,打開寫入,并附加到文件末尾
    'b'       二進(jìn)制模式
    't'       文本模式(默認(rèn))   

    '+'       打開一個磁盤上的文件并更新(讀取和寫入)

下面是一個簡單的打開文件并讀取內(nèi)容的python代碼

# 自python3開始默認(rèn)使用unicode保存代碼文件,所以可以直接在代碼里使用中文,如果是python2.x記得設(shè)置編碼# 導(dǎo)入os庫import osos.chdir("workpath")    # 切換工作目錄os.getcwd()             # 查看當(dāng)前工作目錄path = "新建文本文檔.txt" # 如果沒有切換工作目錄,這里就要用絕對路徑data = open(path, "r", encoding="utf-8")   # 用utf-8格式打開文件,如果有中文請一定要指明編碼格式,目前我看到的中文博客里基本都會提到中文編碼的坑,前輩們的血淚教訓(xùn)一定不能忘啊# 循環(huán)讀取文件內(nèi)容for line in data:    try:  # 異常處理            PRint(line, end="")  # end=""是去掉換行符號    except IOError as ie:   #as 也可以用于賦值
       print(str(ie))  #str() 用于轉(zhuǎn)換成字符串,相當(dāng)于c#里的ToString()   pass  # pass就是pass拉
data.seek(0)  # seek用于退回到起始位置(其實(shí)根據(jù)參數(shù)可以跳到指定位置,但0算是用的最多的)data.close()  # 一定要記得關(guān)閉

 2.字符串操作

split()和c#一樣可以分離字符串,但是要注意參數(shù)是不返回的,比如strA.split(":")返回的字符串列表里沒有:這點(diǎn)要注意,還有一個缺省參數(shù)用于指定分離成幾個,默認(rèn)是-1即有多少分離多少,比如是strA.split(":",1)則無論字符串里有多少個:都只會分裂成兩個字符串,返回值是列表,可以直接a=strA.split(":")也可以(a,b)=strA.split(":"),一般情況下我建議前一種,除非你用strA.split(":",1)確定分離的數(shù)量,還有一點(diǎn)要注意,split返回的是用小括號包圍的列表,即不可變列表,也稱作元組(tuple)。而中括號包圍的列表是可變列表。

find()有點(diǎn)類似c#里的indexOf,查詢匹配項(xiàng)并返回下標(biāo),python里也有index()但是index()在找不到匹配項(xiàng)會報(bào)異常,而find()則返回-1,所以一般建議使用find,可以用參數(shù)指定查詢范圍,如strA.find(":",0,10)查詢下標(biāo)0至9的字符匹配,范圍包含左邊不含右邊,記住哦。

還有一些函數(shù)就不一一細(xì)說了,如果有其他語言的編程經(jīng)驗(yàn),或者英語非常好的話,很多函數(shù)一看名稱就知道是干什么的了,比如append()我不知道也沒有這個單詞,但我知道這一般是在最后附加,等等。這些東西還是要慢慢積累,不是一兩本書就能說的完的。

Ps:寫博客也是一門技術(shù)活啊,這篇文章寫完一看,感覺沒什么用,而且斷斷續(xù)續(xù)的寫了快一下午。真是佩服那些大神。

 


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 贵溪市| 乌兰县| 余江县| 南城县| 马关县| 涟源市| 临武县| 唐海县| 柯坪县| 垦利县| 洪泽县| 河北省| 那坡县| 积石山| 定边县| 永善县| 桂林市| 长岛县| 金华市| 右玉县| 香港 | 新河县| 闽侯县| 铜鼓县| 清河县| 大埔县| 绥中县| 永寿县| 徐闻县| 沁水县| 沭阳县| 长寿区| 文山县| 通渭县| 财经| 无极县| 昭觉县| 枣阳市| 鄂托克前旗| 漳浦县| 泽库县|