Python (1)
1 文件操作
1.1 创建文件
- open()函数
open(file,mode ,buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
不同mode打开文件的完全列表:
模式 | 描述 |
---|---|
t | 文本模式 (默认)。 |
x | 写模式,新建一个文件,如果该文件已存在则会报错。 |
b | 二进制模式。 |
+ | 打开一个文件进行更新(可读可写)。 |
U | 通用换行模式(不推荐)。 |
r | 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。 |
rb | 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。一般用于非文本文件如图片等。 |
r+ | 打开一个文件用于读写。文件指针将会放在文件的开头。 |
rb+ | 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。一般用于非文本文件如图片等。 |
w | 打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。 |
wb | 以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。 |
w+ | 打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。 |
wb+ | 以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。 |
a | 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。 |
ab | 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。 |
a+ | 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。 |
ab+ | 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。 |
这里创建一个apple.txt的文件
>>> fi_1=open('/home/ft/apple.txt','w')
ft@ft-G3-3579:~$ ls
apple.txt examples.desktop Public Templates
Documents Music Python_notes.md Videos
Downloads Pictures Python_workspace
1.2文件重命名
- 引用os库
os.rename(current_file_name, new_file_name)
下面将apple.txt改为banana.doc
>>> import os
>>> os.rename('apple.txt','banana.doc')
>>>
[8]+ Stopped python3
ft@ft-G3-3579:~$ ls
banana.doc Downloads Music Pictures Python_notes.md Templates
Documents examples.desktop name.t Public Python_workspace Videos
1.3 删除文件
同样的使用os中的.remove(),传入需要被删的文件名
下面删除banana.c
>>> import os
>>> os.remove('banana.doc')
>>>
[9]+ Stopped python3
ft@ft-G3-3579:~$ ls
Documents Music Public Templates
Downloads name.t Python_notes.md Videos
examples.desktop Pictures Python_workspace
ft@ft-G3-3579:~$
2 第一行输入一个整数n代表元素的个数,接下来一行输入n个整数并放到列表中。最后输出排序后的列表(可以用列表自带的方法)
num=eval(input('输入一个整数:'))
list_1=num*[None]
for i in range(num): #添加元素
print("请添加第{}个整数,共{}个:".format(i+1,num))
list_1[i]=eval(input())
list_1.sort() #排序
print(list_1)
3 第一行输入一个整数n代表元素的个数,接下来一行输入n个整数并放到列表中。对输入的列表进行去重后并输出;
num=eval(input('输入一个整数:'))
list_2=[]
for i in range(num): #添加元素
print("请添加第{}个整数,共{}个:".format(i+1,num))
a=eval(input())
if a not in list_2:
list_2.append(a)
print(list_2)
4 第一行输入一个整数n代表数据数量。接下来n行输入姓名 学号。接下来输入任意数量的姓名,能输出其对应的学号。
num=eval(input('输入一个整数:'))
dic={}
for i in range(num): #添加元素
print("请添加第{}个键,共{}个:".format(i+1,num))
k=input()
print("请添加第{}个值,共{}个:".format(i+1,num))
v=input()
dic[k]=v
print(dic)