python文件独特行数_python——文件和数据格式化练习题:文件独特行数
描述
統計附件文件中與其他任何其他行都不同的行的數量,即獨特行的數量。
問題分析
這道題是python123課程里面的一道題,我先說一下我的分析過程:
要實現問題找到不同行數,那就要用每一行分別和出它以外剩余所有行比較,然后如果剩余所有行中有和它相同的行,那么它就不是獨特行,需要跳過。
代碼
f=open("latex.log","r")
f1=f.readlines() #建立一個列表,文件的每一行就是列表的一個元素,
f.seek(0)
f2=f.readlines() #建立第二個列表,用來作比較
f.close()
h=0
for i in range(len(f1)): #遍歷每一行,尋找獨特行
for j in range(len(f2)): #對于正在尋找的行,用第二個列表的每一行作對比
if i==j :#自己行不算
continue
elif f1[i]==f2[j]:#如果遇到相同行,跳過
break
else:#如果循環沒有被打斷,說明沒有遇到相同行,則記錄
h+=1
print("共{}獨特行".format(h))
第二種方法
f = open("latex.log")
ls = f.readlines()
s = set(ls)
for i in s:
ls.remove(i)
t = set(ls)
print("共{}獨特行".format(len(s)-len(t)))
利用集合的特性,很簡單的就可以得出答案。
這個代碼也是這道題提供出的參考答案。
總結
對于每一個實際問題,我們可以將它抽象成一個機器可以完成的任務,比如這道題,第一種方法就是模擬人查找獨特行時的一個做法。
至于哪種解決問題方法好,適合自己的才是最好的!
總結
以上是生活随笔為你收集整理的python文件独特行数_python——文件和数据格式化练习题:文件独特行数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 为什么博导都希望,自己的博士生毕业也去高
- 下一篇: 多所高校通知:暂缓返校