提示:这篇文章中主要介绍文件的打开、关闭、读取和写入。和txt文档的新建,且包括字母排序
文章目录
- Python操作,把两个文件中的信息进行合并,并按照字母顺序进行排列,最后输出到一个新文件testC.txt中
- 前言
- 一、题目
- 二、使用步骤
- 1.代码
- 2.输出结果
- 总结
前言
提示:这里添加了下面代码用到的方法
打开文本文件可以调用open()方法,并使用for循环逐行输出其中内容,最后关闭文本文件。
f = open(r’d:test6_1.txt’,‘r’)
for line in f: # 使用for循环逐行输出其中的内容
print(line,end=‘’)
f.close()
list内置sort()方法用来排序,也可以用python内置的全局sorted()方法来对可迭代的序列排序生成新的序列。
w(文件打开模式),覆盖写入模式,如果该文件不存在,则创建新文件
提示:以下是本篇文章正文内容,下面案例可供参考
一、题目D盘test文件夹中有两个文件testA.txt和testB.txt,分别存放了一行字母为:“hello”和“Python”,要求把这两个文件中的信息进行合并,并按照字母的顺序进行排序,最后输出到一个新文件testC.txt中。最后文件testC.txt中的内容为“Pehhlnooty”
二、使用步骤 1.代码(部分解释在注释中)
# D盘test文件夹中有两个文件testA.txt和testB.txt,分别存放了一行字母为:
# “hello”和“Python”,要求把这两个文件中的信息进行合并,并按照字母的顺序进行排序,最后
# 输出到一个新文件testC.txt中。最后文件testC.txt中的内容为“Pehhlnooty”
# 使用read()方法对文件进行读取,
a = open(r'd:testA.txt','r')
for line_A in a: # 使用for循环逐行输出其中的内容
print(line_A)
# a.close()
b = open(r'd:testB.txt','r')
for line_B in b:
print(line_B)
# b.close()
c=line_A+line_B # 合并testA.txt和testB.txt
print(c)
'''
for line_C in c:
print(line_C)
'''
# python中的字符串类型是不允许直接改变元素的。必须先把要排序的字符串放在容器里,如list
c = list(c)
# python中的list容器的sort()函数没返回值。所以在python中对字符串排序往往需要好几行代码。
c.sort()
print(''.join(c))
# 新建文件testC.txt
def text_creat(name):
desktop_path = "D:\" # 新建文件存放路径
full_path = desktop_path + name + '.txt'
file = open(full_path,'w')
# file.write(msg)
# 调用函数创建一个名为testC.txt的文件
text_creat('testC')
# 将c写入testC.txt
with open('d:\testC.txt','w',encoding='utf-8') as f:
# f.write(str(c))
f.write(''.join(c))
f.close()
a.close()
b.close()
2.输出结果
hello
Python
helloPython
Pehhllnooty
总结
提示:这里对文章进行总结:
这篇文章中的题目,主要介绍了如何读取txt文档中的内容和写出,和如何新建一个txt文档并写入内容,次要功能是字母的排序。
希望这篇文章对你有所帮助,如果有帮助请给个赞哦! 注释要好好看,注释更详细
在这里总结一下文件常见的打开方式
| 文件打开模式 | 描述 |
|---|---|
| r | 只读模式,文件的指针将会放在文件的开头,默认模式 |
| w | 覆盖写入模式,如果该文件不存在,则创建新文件 |
| x | 写模式,新建一个文件,如果该文件已存在则会报错 |
| a | 追加写模式,如果该文件不存在,创建新文件进行写入 |
| t | 文本文件模式,默认模式 |
| b | 二进制文件模式 |
| + | 可读可写模式,可以打开一个文件并进行更新 |



