向python程序输入内容
到目前为止,我们编写的程序都是直接运行的,在运行过程中并没有接收程序外部的输入。比如,通过Python程序,我们可以快速算出从1到100的乘法结果
result = 1
for i in range(1, 101):
result = result * i
print(result)
但是如果需要计算从1到200的乘法结果,则只能通过修改程序去实现。
result = 1
for i in range(1, 201):
result = result * i
print(result)
如果可以通过输入,改变计算的范围,那就好了,input()函数可以接收外部的输入
>>> num = input('please input number: ')
please input number: 201
>>> print(num)
因此,通过input()函数,则可以改变上面程序运行的范围,注意:输入的是字符串,需要转型为数字类型。
num = input('please input number: ')
num = int(num)
result = 1
for i in range(1, num):
result = result * i
print(result)
?
python打开文本文件
通过print()可以从数据输出数据,通过input()可以向程序输入数据,但这些都是标准屏幕上的操作,本节课学习文件的读写操作。 Python 提供了open()函数,可以打开一个文件,得到一个文件file对象,而file对象提供相关的方法对文件内容进行读写等操作。 open()函数有若干个参数,比较重要的是以下三个参数:
- 文件路径:指定需要打开的文件的文件路径
- 打开模式:针对不同文件(二进制文件、文本文件)以及不同操作(读操作、写操作),会有不同的打开模式
- 编码:设定打开文件的默认编码
常用的打开模式如下:
模式 | 描述 | t | 文本模式(默认) | x | 写模式,新建一个文件 | b | 二进制模式,打开二进制文件 | + | 更新一个文件(可读可写) | r | 以只读模式打开一个文件 | rb | 以二进制格式只读模式打开一个文件 | w | 打开一个文件进行写入,如果文件内容已存在,会清除原有的内容 | wb | 以二进制格式只写模式打开一个文件,会清除原有的内容 | a | 打开一个文件并追加内容,会往文件尾部添加内容 | ab | 以二进制格式打开一个文件并追加内容,会往文件尾部添加内容 | w+ | 打开一个文件进行读写,如果文件内容已存在,会清除原有的内容 | a+ | 打开一个文件并使用追加进行读写 |
注意,为了安全操作文件,文件使用完毕后,需要使用close()函数正确关闭。 在当前目录下新建一个test.txt文件,并新建一个main.py,此时文件目录如下:
|-- test.txt
+-- main.py
f = open('test.txt', 'r') # 打开test.txt文件
type(f) # 打印f的类型(<class '_io.TextIOWrapper'>)
f.close() # 关闭文件
注意,在打开文本文件是并不需要特别指定模式t,因为默认就是以文本方式打开文件的。
|