python讀取文件的常用方法(Python中讀取文件)

本文目錄一覽:

python讀取xml文件有哪些方法

1、以下幾種方法建議初學者使用:

xml.etree.ElementTree

xml.dom

xml.dom.minidom

xml.dom.pulldom

xml.parsers.expat

其中,第一個模塊更加輕便簡介,對於簡單的xml文檔,推薦使用

下面的方法涉及知識比較多,熟練掌握上面方法後可以了解使用:

2、Dom讀取

3、Dom4j讀取

使用dom4j需要導入相關的jar包

import java.io.File;

import java.util.Iterator;

import java.util.List;

4、JDom讀取

使用jdom需要導入相關的jar包

import java.io.FileInputStream;

import java.io.InputStream;

5、Sax讀取   

6、properties的讀取

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’])

擴展資料:

python控制語句

1、if語句,當條件成立時運行語句塊。經常與else, elif(相當於else if) 配合使用。

2、for語句,遍歷列表、字元串、字典、集合等迭代器,依次處理迭代器中的每個元素。

3、while語句,當條件為真時,循環運行語句塊。

4、try語句,與except,finally配合使用處理在程序運行中出現的異常情況。

5、class語句,用於定義類型。

6、def語句,用於定義函數和類型的方法。

python怎樣讀取txt文件的數據內容

我們使用python的時候經常需要讀取txt文件中的內容,那麼該如何讀取呢?下面我給大家分享一下。

01

首先我們新建一個txt文件,在裡面寫入一些內容,如下圖所示

02

接下來打開運行界面,輸入CMD命令,如下圖所示

03

然後進入CMD界面以後我們輸入python命令進入python環境,如下圖所示

04

最後我們通過python中的open方法打開txt文件,然後通過read方法讀取文件內容,如下圖所示

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文件

python對文本文件的讀有哪些方法,寫有哪些方法?

1 文件讀取全文本操作

在一定場景下我們需要把文本全部內容讀取出來,進行處理。python提供三種函數讀取文件,分別是read readline readlines,

read():讀取文件的全部內容,加上參數可以指定讀取的字元。

readline():讀取文件的一行。

readlines():讀取文件的所有行到內存中。

不同場景下我們可以選擇不同函數對文件進行讀取。

1.1 方法一

file_name = input(“請輸入你要打開的文件的完整路徑及名稱”)

file= open(file_name, “r”)

txt=file.read()

# 全文本的處理

file.close()

使用read函數將文件中的內容全部讀取,放在字元串變數txt中。這樣操作適合於文本較小,處理簡單的情況,當文件較大時,這種方式處理時不合適的。一次性讀取較大的文件到內存中,會耗費較多的時間和資源。這時候分批處理效果更好。

1.2 方法二

file_name = input(“請輸入你要打開的文件的完整路徑及名稱”)

file= open(file_name, “r”)

txt= file.read(4)

# 文本的處理while txt != “”txt= file.read(4)

# 批量文本處理

file.close()

這種方法適合於分批處理文本信息,每次批量讀入,批量處理,不會對內存造成較大的壓力。

1.3 方法三

file_name = input(“請輸入你要打開的文件的完整路徑及名稱”)

file= open(file_name, “r”)for line infile.readlines():

# 處理每一行數據

file.close()

這種處理方式適合處理以行為分割特點的文本,並且文本較小,因為這種處理方式需要一次性把文件所有內容讀取到內存中。

1.4 方法四

file_name = input(“請輸入你要打開的文件的完整路徑及名稱”)

file= open(file_name, “r”) # 這裡的file時文件句柄for line infile:

# 處理每一行數據

file.close()

這種方式和方法三中的區別是分行讀入,逐行處理,不會一次性把文件所有內容都讀入到內存中,對一些大文件的處理是很有效的。

2 文件寫入文本操作

文件寫入有兩種寫入函數和一種輔助支持。

write():向文件中寫入一個字元或者位元組流

writelines():將一個元素全為字元串的列表寫入到文件中 需要注意的是,writelines寫入列表元素的時候會把列表元素的內容拼接到一起寫入,不會有換行和空格 。

seek(): 輔助寫入函數offset偏移量參數代表含義如下

0 – 文件開頭

1 – 當前位置

2 – 文件結尾

2.1 方法一

file_name = input(“output.txt”, “w+”)

text= “hello world!”file_name.write(text)

file.close()

2.2 方法二

file_name = input(“output.txt”, “w+”)

list= [“中午”,”早上”,”晚上”]

file_name.writelines(list)for line infile:

# 讀取寫入的數據,這時候發現是沒有任何內容的

file.close()

我們增加一行代碼就可以讀取到寫入的文件內容,利用seek()函數調整寫操作指針的位置,可以實現寫操作之後的正常讀取。

file_name = input(“output.txt”, “w+”)

list= [“中午”,”早上”,”晚上”]

file_name.readlines(list)

file_name.seek(0) # 調整寫的指針到文件的開始位置for line infile:

# 讀取寫入的數據,這時候會讀出一行寫入的數據。

file.close()

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/279561.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-20 15:04
下一篇 2024-12-20 15:04

相關推薦

  • 如何查看Anaconda中Python路徑

    對Anaconda中Python路徑即conda環境的查看進行詳細的闡述。 一、使用命令行查看 1、在Windows系統中,可以使用命令提示符(cmd)或者Anaconda Pro…

    編程 2025-04-29
  • Python中引入上一級目錄中函數

    Python中經常需要調用其他文件夾中的模塊或函數,其中一個常見的操作是引入上一級目錄中的函數。在此,我們將從多個角度詳細解釋如何在Python中引入上一級目錄的函數。 一、加入環…

    編程 2025-04-29
  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • Python計算陽曆日期對應周幾

    本文介紹如何通過Python計算任意陽曆日期對應周幾。 一、獲取日期 獲取日期可以通過Python內置的模塊datetime實現,示例代碼如下: from datetime imp…

    編程 2025-04-29
  • Python列表中負數的個數

    Python列表是一個有序的集合,可以存儲多個不同類型的元素。而負數是指小於0的整數。在Python列表中,我們想要找到負數的個數,可以通過以下幾個方面進行實現。 一、使用循環遍歷…

    編程 2025-04-29
  • Python清華鏡像下載

    Python清華鏡像是一個高質量的Python開發資源鏡像站,提供了Python及其相關的開發工具、框架和文檔的下載服務。本文將從以下幾個方面對Python清華鏡像下載進行詳細的闡…

    編程 2025-04-29
  • python強行終止程序快捷鍵

    本文將從多個方面對python強行終止程序快捷鍵進行詳細闡述,並提供相應代碼示例。 一、Ctrl+C快捷鍵 Ctrl+C快捷鍵是在終端中經常用來強行終止運行的程序。當你在終端中運行…

    編程 2025-04-29
  • Python程序需要編譯才能執行

    Python 被廣泛應用於數據分析、人工智慧、科學計算等領域,它的靈活性和簡單易學的性質使得越來越多的人喜歡使用 Python 進行編程。然而,在 Python 中程序執行的方式不…

    編程 2025-04-29
  • Python字典去重複工具

    使用Python語言編寫字典去重複工具,可幫助用戶快速去重複。 一、字典去重複工具的需求 在使用Python編寫程序時,我們經常需要處理數據文件,其中包含了大量的重複數據。為了方便…

    編程 2025-04-29
  • 蝴蝶優化演算法Python版

    蝴蝶優化演算法是一種基於仿生學的優化演算法,模仿自然界中的蝴蝶進行搜索。它可以應用於多個領域的優化問題,包括數學優化、工程問題、機器學習等。本文將從多個方面對蝴蝶優化演算法Python版…

    編程 2025-04-29

發表回復

登錄後才能評論