前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python快速入门(三)

Python快速入门(三)

作者头像
HuangWeiAI
发布2019-09-30 15:46:02
5070
发布2019-09-30 15:46:02
举报
文章被收录于专栏:浊酒清味

引言

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文件内容:

大功告成!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-09-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python与机器学习之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档