python讀取n行
㈠ python如何讀取文件的內容
# _*_ coding: utf-8 _*_
import pandas as pd
# 獲取文件的內容
def get_contends(path):
with open(path) as file_object:
contends = file_object.read()
return contends
# 將一行內容變成數組
def get_contends_arr(contends):
contends_arr_new = []
contends_arr = str(contends).split(']')
for i in range(len(contends_arr)):
if (contends_arr[i].__contains__('[')):
index = contends_arr[i].rfind('[')
temp_str = contends_arr[i][index + 1:]
if temp_str.__contains__('"'):
contends_arr_new.append(temp_str.replace('"', ''))
# print(index)
# print(contends_arr[i])
return contends_arr_new
if __name__ == '__main__':
path = 'event.txt'
contends = get_contends(path)
contends_arr = get_contends_arr(contends)
contents = []
for content in contends_arr:
contents.append(content.split(','))
df = pd.DataFrame(contents, columns=['shelf_code', 'robotid', 'event', 'time'])
(1)python讀取n行擴展閱讀:
python控制語句
1、if語句,當條件成立時運行語句塊。經常與else, elif(相當於else if) 配合使用。
2、for語句,遍歷列表、字元串、字典、集合等迭代器,依次處理迭代器中的每個元素。
3、while語句,當條件為真時,循環運行語句塊。
4、try語句,與except,finally配合使用處理在程序運行中出現的異常情況。
5、class語句,用於定義類型。
6、def語句,用於定義函數和類型的方法。
㈡ python3 怎麼讀入多行字元串。
stopword=''
str=''
forlineiniter(input,stopword):
str+=line+' '
這樣就可以了,直到你輸入空白行才會停止
㈢ python如何查找n行里的某一整行字元
那隻能說:
如果你確定,一定,以及肯定:
d7dhsjw8eieew323ew
前面那行的內容就是:
South Dakota is a state located in the Midwestern region of the United States:
和後面那行內容就是:
SD stock chart on Yahoo! Finance. Change the date range.
那麼,是可以直接通過寫出正則表達式:
foundYourWant. = re.search("South Dakota is a state located in the Midwestern region of the United States:\s+(?P<contentYourWant>\S+)\s+SD stock chart on Yahoo! Finance. Change the date range", inputWholeStr);
contentYourWant = foundYourWant.group("contentYourWant");
print "contentYourWant=",contentYourWant;
去獲得你要的內容的。
如果前後兩行內容不固定,那麼就要找到其他有規律的地方,然後根據不同的規律,寫出不同的正則表達式,也是可以獲得對應內容的。
如果沒有規律,則就沒辦法了。
關於正則,不了解的可以推薦你去看:
【教程】詳解Python正則表達式
(此處不給貼地址,請自己用google搜帖子標題,就可以找到帖子地址了)
㈣ 怎樣使用python 查詢並返回後N行的數據
importMysqldb
conn=MySQLdb.connect(
host='127.0.0.1',
port=3306,
user='',
passwd='',
db='test',
charset='utf8'
)
cursor=conn.cursor()
sel_sql="select*fromuser"
res=cursor.execute(sel_sql)
printcursor.fetchall()
cursor.close()
conn.close()
這是獲取所有的數據,你遍歷一下獲取你想要的行數就行了
㈤ Python 讀取指定行數
F=('n'.join(open('C:\Users\Administrator\Desktop\ID.txt','r',encoding='gbk').readlines()[b:c]))
㈥ 如何用python最快的獲取大文件的最後幾行
工作中經常會遇到處理日誌文件的問題:為了得到日誌的最新狀態,我們需要獲取日誌文件的最後部分行來做判斷。那麼,這種情況下我們應該怎麼做呢?
1)常規方法:從前往後依次讀取
步驟:open打開日誌文件。
讀取文件,獲取文件的總行數。
遍歷所有行,提取指定行的數據。
優點:簡單,方便
缺點:當文件大了以後時間太慢,無法忍受
2)推薦方法:
步驟:open打開日誌文件。
移動文件讀取指針到文件末尾。
從後往前移動指針直到合適的位置。
讀取文件,提取指定行的數據。
優點:時間相對固定,適合處理大文件
示例:
[python] view plain
logFile = open('logFilePath.log', 'r')
logFile.seek(0,2)
logFile.seek(-1000000,2)
rowCount = 0
for row in logFile.readlines()[1:]:
pass
seek():移動文件讀取指針到指定位置
tell():返迴文件讀取指針的位置
seek()的三種模式:
(1)f.seek(p,0) 移動當文件第p個位元組處,絕對位置
(2)f.seek(p,1) 移動到相對於當前位置之後的p個位元組
(3)f.seek(p,2) 移動到相對文章尾之後的p個位元組
㈦ 知道一個文本中某些行的行號,怎樣用python直接讀出來呢如只想讀出第100行的文本。
1.python中只有seek能跳躍的讀,但是是按照位元組來的,如果你的文本每一行都是一樣的長度的話倒是可以。f.seek(99*n)之後再f.readline()
2.如果不知道每行長度的話,那麼就循環100次readline()吧,這個總比直接readlines()好,如果全部長1萬行,這樣也只讀了100行,readlines()卻要讀10000行。
3.如果文本是自己寫的話,可以事先坐下標記最好了。