python隨機遍歷文件所有行(每行被遍歷一次,洗牌算法)


 1 # _*_ coding:utf8 _*_
 2 import random
 3 import linecache
 4 import sys
 5 #隨機讀取文件內容,保證每行被讀一次
 6 filepath=str(sys.path[0])+'\\'+'wordenglish.txt'#文件路徑
 7 count = len(open(filepath,'rU').readlines())#返回文件行數
 8 s=range(1,count+1)#生成列表,從1到文件行長度
 9 #洗牌,次數為文件長度,每次交換兩個位置
10 for i in s:
11     s1=random.randint(0,count-1)
12     s2=random.randint(0,count-1)
13     s[s1],s[s2]=s[s2],s[s1]#根據生成的隨機數交換位置
14 #讀取文件內容並顯示
15 for i in s:
16     print(linecache.getline(filepath,i))#從指定文件讀取指定行
17     raw_input('any key contunu')

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM