將python運行結果保存至在地文件中

尋夢新聞LINE@每日推播熱門推薦文章,趣聞不漏接❤️

加入LINE好友

一、建立文件,保存數據

1.使用python中內置的open函數 打開txt文件

#mode 模式

#w 只能操作寫入 r 只能讀取 a 向文件追加

#w+ 可讀可寫 r+可讀可寫 a+可讀可追加

#wb+寫入進制數據

#w模式打開文件,如果而文件中有數據,再次寫入內容,會把原來的覆蓋掉

file_handle=open(‘1.txt’,mode=’w’)

2.向文件中寫入數據

2.1 write寫入

#\n 換行符

file_handle.write(‘hello word 你好 \n’)

2.2writelines()函數 會將列表中的字符串寫入文件中,但不會自動換行,如果需要換行,手動添加換行符

#參數 必須是一個只存放字符串的列表

file_handle.writelines([‘hello\n’,’world\n’,’你好\n’,’智遊\n’,’鄭州\n’])

3.關閉文件

file_handle.close()

二、打開文件 讀取文件中的信息

1.打開文件

#使用r模式打開文件,做讀取文件操作

#打開文件的模式,默認就是r模式,如果只是讀文件,可以不填寫mode模式

file_handle=open(‘1.txt’,mode=’r’)

2.讀取文件內容(三種方法)

2.1 read(int)函數

讀取文件內容。如果指定讀取長度,會暗戰長度去讀取,不指定默認讀取所有數據

content=file_handle.read(20)

2.2 readline(int)函數

默認讀取文件一行的數據 參數大於一行的長度,值讀取一行,若小於一行的長度,讀取指定長度

content=file_handle.readline(20)

2.3 readlines( )函數

會把每一行的數據作為一個元素放在列表中返回,讀取所有行的數據

contents=file_handle.readlines()

3.關閉文件

file_handle.close()

三 、獲取光標位置的函數tell( )

#tell()函數 返回當前文件中光標的位置

file_handle=open(‘1.txt’)

#先讀取一行的數據

content=file_handle.readline()

print(content)

#獲取光標的位置

number=file_handle.tell()

print(number)

四、調整光標位置的函數seek( )

#第一個參數offset 直接指定文件的光標位置

#第二個參數(默認為0):0 直接移動到開始位置 1當前的位置 2末尾的位置

file_handle.seek(0)

number=file_handle.tell()

print(number)

例子

1.將每一個成員的信息從列表中存放入文件,再從文件中取出組裝成原來列表

”’

student_list = [[‘張三’,’22’,’110′],[‘李四’,’22’,’110′],[‘王五’,’22’,’110′]]

”’

# 存儲

student_list = [[‘張三’,’22’,’110′],[‘李四’,’22’,’110′],[‘王五’,’22’,’110′]]

# 1.打開文件

file_handle = open(‘student_v2.txt’,mode=’w’)

# 2.寫入數據

for student in student_list:

# for循環取出小列表中的每一條數據,

# for msg in student:

# # 寫入文件

# file_handle.write(msg)

# # 寫入空格

# file_handle.write(‘ ‘)

# # 一個人的信息寫入完成,寫入換行符

# file_handle.write(‘\n’)

# join() 可以使用某個字符,將列表中的數據拼接為一個字符串

s=’ ‘.join(student)

# 寫入拼接後的字符串

file_handle.write(s)

#寫入換行

file_handle.write(‘\n’)

# 3.關閉文件

file_handle.close()

# 取出

file_handle = open(‘student_v2.txt’,mode=’r’)

contents = file_handle.readlines()

print(contents)

# [[‘張三’,’22’,’110′],[‘李四’,’22’,’110′],[‘王五’,’22’,’110′]]

student_list = []

for msg in contents:

msg = msg.strip(‘\n’)

# split() 通過某個字符分割字符串,返回的是分割完成後的列表

list_1 = msg.split(‘ ‘)

# pop()函數 移除列表中最後一個元素

# list_1.pop()

# 把小列表添加到大列表中

student_list.append(list_1)

file_handle.close()

print(student_list)

2.

# 列表數據的讀取和寫入

# —————寫入************

list_1 = [‘張三’,’李四’,’王五’]

# 1.打開文件

file_handle = open(‘student.txt’, mode=’w’)

# 2.寫入數據

for name in list_1:

file_handle.write(name)

# 寫入換行符

file_handle.write(‘\n’)

# 3.關閉文件

file_handle.close()

# 讀取文件,並且必須是一個列表,格式:[‘張三’,’李四’,’王五’]

file_handle = open(‘student.txt’, mode=’r’)

# readlines() 讀取所有行的數據,會返回一個列表,列表中存放的數據就是每一行的內容

contents = file_handle.readlines()

# 準備一個列表,用來存放取出來的數據

student_list = []

# for循環遍歷列表,取出每一行讀取到的內容

for name in contents:

# strip()去除字符串中的某些特殊字符 去除\n

name = name.strip(‘\n’)

# 把處理好的name添加到列表中

student_list.append(name)

# 這個列表中存放的就是和寫入之前一樣的內容

print(student_list)

# 3.關閉文件

file_handle.close()

將python運行結果保存至本地文件中

About 尋夢園
尋夢園是台灣最大的聊天室及交友社群網站。 致力於發展能夠讓會員們彼此互動、盡情分享自我的平台。 擁有數百間不同的聊天室 ,讓您隨時隨地都能找到志同道合的好友!