引言
Python作为一个,目前最火的编程语言之一,已经渗透到了各行各业。它易学好懂,拥有着丰富的库,功能齐全。人生苦短,就用Python。
这个快速入门系列分为六篇,包含了Python大部分基础知识,每篇阅读时间不长,但内容含量高。大家最好亲自码一遍代码,这样可以更有收获。
概要
1、掌握Python中的输入函数,让程序因为交互变得生动;
2、掌握Python中的参数变量,让管理参数接口得心应手;
3、掌握Python中的文件读写,轻松应对程序和文件交互。
输入
在之前的学习中,我们一直离不开print()函数,我们可以把print看成是一个程序向用户输出信息的途径。反过来我们也可以向程序输入一些信息,其实这种操作无处不在,我们操纵鼠标或者用键盘打字都可以看成是向电脑进行输入。而对于Python而言,我们有输入函数input()。
代码:
print ('Please enter your name')
name = input( )
print ('How old are you?')
age = input( )
print ('Hello %s, you are %s years old.' %(name,age))
讲解:
我们分别要求用户输入name和age,然后在接受到这两个信息之后打印出来。
值得注意的是当你输入一个变量之后需要用回车键来完成输入。
运行结果:
Please enter your name
Sherlock
How old are you?
36
Hello Sherlock, you are 36 years old.
加入字符串提示
刚刚我们介绍了单纯的输入函数input(),其实在函数里面我们可以直接输入提示用户的文字,给与用户给多的指引。
代码:
name = input ('Please enter your name')
age = input ('How old are you? ')
print ('Hello %s, you are %s years old.'%(name,age))
讲解:
我们分别在姓名和年龄的输入中加入了两个字符串,提示用户输入相应的信息,相比较于用print函数打印让用户输入信息更加方便一些。
运行结果:
Please enter your name Sherlock
How old are you? 36
Hello Sherlock, you are 36 years old.
参数
除了用input()函数向程序进行输入,我们还有一种方式可以向程序输入内容,这个方法叫做参数变量。我们用argv表示参数变量,它其实一个缩写 argv= argument variable。和input()不同,argv只能在用命令行操作运行程序的时候附加上。
代码:
from sys import argv
script, name, age = argv
print (script)
print ('Hello %s, you are %s years old.'%(name,age))
讲解:
我们首先使用了import导入了sys.argv模块。如果没有这一行代码,我们就没办法使用argv,所以import可以理解为用之前把东西导入进来,做准备工作。第二行代码中,argv左边一个有三个变量,其中script会获得程序本身的名字,可以理解成argv自带的变量。而name和 age两个变量就是你要在运行程序时候输入的内容。
在有参数的时候,我们不能通过右键选择在终端运行程序,而是要在终端用命令行来操作。具体来说,我们py文件的名字叫class3.py,所以命令行应该是:
python class3.py name age
这种方式来运行程序。
运行结果:
C:\Users\weihuang\Documents\python\code>
python class3.py Sherlock 36
class3.py
Hello Sherlock, you are 36 years old.
注意,第一行是我的Python文件所在的地址;第二行是命令行操作;第三行是script打印结果,也就是程序的名字,class3.py;最后一行是加上参数name和age之后打印结果。
当然,我们也可以把所有变量放在一个变量上面:
代码:
from sys import argv
arg_one = argv
print (type(arg_one))
print (arg_one[0])
print ('Hello %s, you are %s years old.' %(arg_one[1],arg_one[2]) )
讲解:
我们只用了一个叫做 arg_one的变量传递所有的参数。现在arg_one是一个列表(list),关于列表,我们会在后面的课程中详细讲解。我们发现 arg_one收到的三个变量 script, name, age分别可以用 arg_one[0], arg_one[1], arg_one[2]调用出来。
运行结果:
C:\Users\weihuang\Documents\python\code>
python class3.py Sherlock 36
<class 'list'>
class3.py
Hello Sherlock, you are 36 years old.
文件读写
当用Python处理数据时,我们经常需要从文件中读取数据,以及将处理的结果输出到一个文件中。在编程中,我们将两个过程分别叫做“读取”和“写入”。这次我们学习最简单的txt文件的读写。
文件读取
第一步建立一个名字叫test.txt的文件:
第二步写程序读取这个文件:
注意,最好在把test.txt文件和Python程序放在同一个文件下面,然后在VsCode中“打开文件夹”中,选择程序和文件所在的那个文件夹。
代码:
from sys import argv
script, file_name = argv
txt = open(file_name)
print (txt.read())
讲解:
我们首先使用了上面讲到的argv从命令行中获得文件名字,这样做的好处是在不改变代码的情况下可以处理不同的文件。然后在第3行我们用open()函数来打开文件,并且把文件目标赋值在变量 txt上。最后我们使用了后缀.read()将文件的内容阅读出来。
运行结果:
C:\Users\weihuang\Documents\python\code>
python class3.py test.txt
This is a txt file.
I'm a superman.
How old are you?
文件写入
我们开始尝试把内容写入到一个文件当中:
代码:
from sys import argv
script, file_name = argv
write_file = open(file_name,'w')
print ('Please enter three lines')
line1 = input('line 1: ')
line2 = input('line 2: ')
line3 = input('line 3: ')
write_file.write(line1 + '\n')
write_file.write(line2 + '\n')
write_file.write(line3 + '\n')
write_file.close()
讲解:
第3行中,我们首先用open函数打开由argv接收到的文件名,注意这里我们在函数加了一个‘w’,意思是 write,申明了可以对文件进行写入的权限。之后我们用 input函数来让用户输入三行内容。得到了用户的输入之后,我们使用后缀.write()来对文件进行书写,其中的加号作用是把字符串串联起来,让每一行内容输入后换行。最后的最后别忘记用 .close()后缀函数关闭文件,养成一个好的习惯。
运行结果:
C:\Users\weihuang\Documents\python\code>
python class8.py test1.txt
Please enter three lines
line 1: 'How are you?'
line 2: 'Fine, thank you, and you?'
line 3: 'Me too.'
注意,input()函数要求输入的内容是字符串变量时,需要加上引号。
我们来test1.txt文件内容:
大功告成!
本文分享自 Python与机器学习之路 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!