Python操作txt文本文件


題目:

1、TXT文本文件中的內容為:
  url:http://119.23.241.154:8080/futureloan/mvc/api/member/login,mobilephone:13760246701,pwd:123456
  url:http://119.23.241.154:8080/futureloan/mvc/api/member/login,mobilephone:15678934551,pwd:234555
要求:
  1)將文件的數據讀取出來,並根據逗號將其分隔出來 ;
  2)將分隔出來的數據,再以冒號進行分隔。冒號之前為key,冒號之后為value。
  3)最終結果要求如下:
    [{"url":"http://119.23.241.154:8080/futureloan/mvc/api/member/login","mobilephone":"13760246701","pwd":"123456"},
    {"url":"http://119.23.241.154:8080/futureloan/mvc/api/member/login","mobilephone":"15678934551","pwd":"234555"}]

解答:

  第一種:
 1 # 讀取數據 --按行讀取文件中的數據
 2 fs = open("test.txt")   # 打開文件
 3 lines = fs.readlines()  # 按行讀取
 4 for line in lines:  # 循環處理每行數據
 5     # print(line)
 6     datas = line.strip("\n").split(",")     # 對每行進行處理,strip("\n")去掉前后換行符,split(",")使用,號分隔
 7     # print(datas) # datas = ['url:http://119.23.241.154:8080/futureloan/mvc/api/member/login',
 8                         # 'mobilephone:13760246701', 'pwd:123456']
 9     urls = {}   # 定義一個空字典
10     for i in datas:     # 獲取datas列表中的每一條數據
11         temp = i.split(":",1)   # 將datas中每一條數據用 :號分隔1次
12         print(temp) 13         urls[temp[0]] = temp[1]     # 鍵-值對添加值 key = value
14         print(urls)

  第二種:不帶返回值的函數

 1 def getDictDatas_FromFile(filePath):  2     # 讀取數據 --按行讀取文件中的數據
 3     fs = open(filePath)  # 打開文件
 4     lines = fs.readlines()  # 按行讀取
 5 
 6     for line in lines:  # 循環處理每行數據
 7         # print(line)
 8         datas = line.strip("\n").split(",")  # 對每行進行處理,strip("\n")去掉前后換行符,split(",")使用,號分隔
 9         urls = {}  # 定義一個空字典
10         for i in datas:  # 獲取datas列表中的每一條數據
11             temp = i.split(":", 1)  # 將datas中每一條數據用 :號分隔1次
12             # print(temp)
13             urls[temp[0]] = temp[1]  # 鍵-值對添加值 key = value
14         print(urls) 15 
16 a = getDictDatas_FromFile("test.txt")

  第三種:帶返回值的函數

def getDictDatas_FromFile(filePath): fs = open(filePath,encoding= 'utf-8') # 打開文件
    lines = fs.readlines()  # 按行讀取
    data = []   # 定義一個空列表,用來接收每行數據
    for line in lines: list = line.strip("\n").split(",")  # 用,號分隔,並去除換行符
        urls = {}   # 定義一個空字典
        for item in list:   # 獲取list列表中的每一條數據
            temp = item.split(":",1)    # 將list中每一條數據用 :號分隔1次
            urls[temp[0]] = temp[1] # 鍵-值對添加值 key = value
 data.append(urls) return data

  執行結果:

{'pwd': '123456', 'url': 'http://119.23.241.154:8080/futureloan/mvc/api/member/login', 'mobilephone': '13760246701'} {'pwd': '234555', 'url': 'http://119.23.241.154:8080/futureloan/mvc/api/member/login', 'mobilephone': '15678934551'}

 


免責聲明!

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



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