python讀取文本數據
Ⅰ 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讀取文本數據擴展閱讀:
python控制語句
1、if語句,當條件成立時運行語句塊。經常與else, elif(相當於else if) 配合使用。
2、for語句,遍歷列表、字元串、字典、集合等迭代器,依次處理迭代器中的每個元素。
3、while語句,當條件為真時,循環運行語句塊。
4、try語句,與except,finally配合使用處理在程序運行中出現的異常情況。
5、class語句,用於定義類型。
6、def語句,用於定義函數和類型的方法。
Ⅱ python怎麼讀取txt文件全部數據
f=open("a.txt")
printf.read()
Ⅲ 用python讀取文本文件,對讀出的每一行進行操作,這個怎麼寫
用python讀取文本文件,對讀出的每一行進行操作,寫法如下:
f=open("test.txt","r")
whileTrue:
line=f.readline()
ifline:
pass#dosomethinghere
line=line.strip()
p=line.rfind('.')
filename=line[0:p]
print"create%s"%line
else:
break
f.close()
Ⅳ Python讀取文件內容的方法有幾種
filename=open('i:\\install\\test.txt','r+')#讀取xx路徑xx文件;r+代表的是讀寫並存方式 print filename.read()#讀取所有的文件
Ⅳ python怎樣讀取txt文件的數據內容
我們使用python的時候經常需要讀取txt文件中的內容,那麼該如何讀取呢?下面我給大家分享一下。
- 01
首先我們新建一個txt文件,在裡面寫入一些內容,如下圖所示
- 02
接下來打開運行界面,輸入CMD命令,如下圖所示
- 03
然後進入CMD界面以後我們輸入python命令進入python環境,如下圖所示
- 04
最後我們通過python中的open方法打開txt文件,然後通過read方法讀取文件內容,如下圖所示
Ⅵ Python如何從文件讀取數據
1.1 讀取整個文件
要讀取文件,需要一個包含幾行文本的文件(文件PI_DESC.txt與file_reader.py在同一目錄下)
PI_DESC.txt
3.1415926535
8979323846
2643383279
5028841971
file_reader.py
with open("PI_DESC.txt") as file_object:
contents = file_object.read()
print(contents)
我們可以看出,讀取文件時,並沒有使用colse()方法,那麼未妥善的關閉文件,會不會導致文件收到損壞呢?在這里是不會的,因為我們在open()方法前邊引入了關鍵字with,該關鍵字的作用是:在不需要訪問文件後將其關閉
1.2文件路徑
程序在讀取文本文件的時候,如果不給定路徑,那麼它會先在當前目錄下進行檢索,有時候我們需要讀取其他文件夾中的路徑,例如:
Ⅶ python怎麼讀取txt文件
方法一:
f=open("foo.txt")#返回一個文件對象
line=f.readline()#調用文件的readline()方法
whileline:
printline,#後面跟','將忽略換行符
#print(line,end='')#在Python3中使用
line=f.readline()
f.close()
方法二:
for line in open("foo.txt"):
print line,
方法三:
f=open("c:\1.txt","r")
lines=f.readlines()#讀取全部內容
forlineinlines
printline
黑馬程序員的Python課程非常的全面系統,網上也有很多的免費教程,想學習的小夥伴,可以下載學習下。Ⅷ python 按列讀取文本數據 列表越界咋回事啊@_@ IndexError:list index out of range
因為空行導致split函數返回的tmp為空,所以tmp[0]導致了數組越界。
分析思答瞎路:
1、報錯信息裡面已經提示了第12有誤。
2、提示為數組index越界,而12行的代碼中tmp[0]涉及數組。
3、找到tmp的定義,是split函數分解之後的內容,應當為一個list列表。
4、但是此處連tmp[0]都提示梁舉兄有錯,說明tmp中沒有任何元素。
5、推得for i in f0,中的沒一行的數據i有問題,當運行到最後,回出現一個由問題的i。
所以文件最後一行為空行,通常為寫入文件函數每行之後附帶的 轉義字元導致。
(8)python讀取文本數據擴展閱讀:
IndexError: list index out of range錯誤的其他情況
第一種情況:
list[index]index超出范圍
第二種情況:
list是一個空的,沒有一個元素
進行list[0]就會報該錯誤。
一般外部輸入的數據都可能存在問題,所以通常在readlines或者read後要做一次處理。
這樣就避免了空橡襲行,欄位數不足,以及類型轉換出錯。
解決方案:
針對第一種情況,通過調試檢查代碼。
關於第二種情況,有兩種方法:
第一種:檢查讀入的數據是都有問題,比如讀入的txt文件是否存在空行等等,第二種解決方案,在代碼上改錯。
with open("linux_Yue_01.txt","r") as testFile:
testfileList = []
for v testFile.read().split(" ")
if not v.strip(): #字元串去掉空格不為空
continue
testfileList.extend([splitFileNameAndLabel(v)])
注意:[splitFileNameAndLabel(v)]是又方括弧的,否則不能成為列表中嵌套列表了。
Ⅸ 怎麼用python讀取txt文件里指定行的內容,並導入excel
全文使用的是xlswriter模塊寫的,也有人使用xlrd與xlutils模塊實現,不過還未進行驗證
import xlsxwriter
workbook = xlsxwriter.Workbook("D:\Program Files\subpy\sql2.xlsx")#在指定目錄下創建一個excle
worksheet = workbook.add_worksheet("students")#新建一個sheet
title_index = ["A"族頃,"B","C","D"]#sheet中的區域
li = [] #定義一個空列表
blod = workbook.add_format({"bold":True})#定義exlce中寫入的字體with open("D:\Program Files\subpy\tets.txt",'r') as f1:#打開txt文檔
lines = f1.readlines()#讀取所有行內容
n = -1#定義一個變激穗山量
for x in lines:#逐行讀取
n=n+1
li.append(x[:-1])#去掉回車符
y= x.split#以空格分字元
for i in range(len(title_index)):#讀取excle區域下標
# for i,j in enumerate(title_index):
content = y[i]#單個字元讀取
worksheet.write(n,i,content,blod)#分明中行分列寫入workbook.
close#關閉excle
Ⅹ python讀取文件—txt文件常用讀寫操作
f = open("data.txt","r") #設置文件對象
f.close() #關閉文件
為了方便,避免忘記close掉這個文件對象,可以用下面這種方式替代
with open('data.txt',"r") as f: #設置文件對象
str = f.read() #可以是隨便對文件的操作
f = open("data.txt","r") #設置文件對象
str = f.read() #將txt文件的所有內容讀入到字元串str中
f.close() #將文件關閉
f = open("data.txt","r") #設置文件對象
line = f.readline()
line = line[:-1]
while line: #直到讀取完文件
line = f.readline() #讀取一行文件,包括換行符
line = line[:-1] #去掉換行符,也可以不去
f.close() #關閉文件
data = []
for line in open("data.txt","r"): #設置文件對象並讀取每一行文件
data.append(line) #將每一行文件加入到list中
f = open("data.txt","r") #設置文件對象
data = f.readlines() #直接將文件中按行讀到list里,效果與方法2一樣
f.close() #關閉文件
可以使用pandas的.read_csv,讀取文件的時候可以給每一列起名字,通過列名來調取相應列的數據。
import pandas as pd
data = pd.read_csv(" OSDO1012.txt",sep=',',header=None, names=['lat','lon','time','z']
使用data.lat就可以讀取名為lat這一列的數據
data = np.loadtxt("data.txt",skiprows = 1) #將文件中數據載入到data數組里,並且跳過第一行
with open('data.txt','w') as f: #設置文件對象
f.write(str) #將字元串寫入文件中
data = ['a','b','c']
單層列表寫入文件
with open("data.txt","w") as f:
f.writelines(data)
每一項用空格隔開,一個列表是一行寫入文件
data =[ ['a','b','c'],['a','b','c'],['a','b','c']]
with open("data.txt","w") as f: #設置文件對象
for i in data: #對於雙層列表中的數據
i = str(i).strip('[').strip(']').replace(',','').replace('\'','')+'\n' #將其中每一個列表規范化成字元串
f.write(i) #寫入文件
直接將每一項都寫入文件
data =[ ['a','b','c'],['a','b','c'],['a','b','c']]
with open("data.txt","w") as f: #設置文件對象
for i in data: #對於雙層列表中的數據
f.writelines(i) #寫入文件
np.savetxt("data.txt",data) #將數組中數據寫入到data.txt文件
np.save("data.txt",data) #將數組中數據寫入到data.txt文件