python练习(1)

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) 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值