扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
现在,了解了如何启动和退出Python的交互式环境,我们就可以正式开始编写Python代码了。
在写代码之前,请千万不要用“复制”-“粘贴”把代码从页面粘贴到你自己的电脑上。写程序也讲究一个感觉,你需要一个字母一个字母地把代码自己敲进去,在敲代码的过程中,初学者经常会敲错代码,所以,你需要仔细地检查、对照,才能以最快的速度掌握如何写程序。
在交互式环境的提示符>>>
下,直接输入代码,按回车,就可以立刻得到代码执行结果。现在,试试输入100+200
,看看计算结果是不是300:
>>> 100+200
300
很简单吧,任何有效的数学计算都可以算出来。
如果要让Python打印出指定的文字,可以用print
语句,然后把希望打印的文字用单引号或者双引号括起来,但不能混用单引号和双引号:
>>> print 'hello, world'
hello, world
这种用单引号或者双引号括起来的文本在程序中叫字符串,今后我们还会经常遇到。
最后,用exit()
退出Python,我们的第一个Python程序完成!唯一的缺憾是没有保存下来,下次运行时还要再输入一遍代码。
在Python的交互式命令行写程序,好处是一下就能得到结果,坏处是没法保存,下次还想运行的时候,还得再敲一遍。
所以,实际开发的时候,我们总是使用一个文本编辑器来写代码,写完了,保存为一个文件,这样,程序就可以反复运行了。
现在,我们就把上次的'hello, world'
程序用文本编辑器写出来,保存下来。
所以问题又变成了:用什么文本编辑器?
推荐两款文本编辑器:
一个是 Sublime Text,免费使用,但是不付费会弹出提示框:
一个是 Notepad++,免费使用,有中文界面:
请注意,用哪个都行,但是绝对不能用Word和Windows自带的记事本。Word保存的不是纯文本文件,而记事本会自作聪明地在文件开始的地方加上几个特殊字符(UTF-8 BOM),结果会导致程序运行出现莫名其妙的错误。
安装好文本编辑器后,输入以下代码:
print 'hello, world'
注意print
前面不要有任何空格。然后,选择一个目录,例如C:\Workspace
,把文件保存为hello.py
,就可以打开命令行窗口,把当前目录切换到hello.py
所在目录,就可以运行这个程序了:
C:\Workspace>python hello.py
hello, world
也可以保存为别的名字,比如abc.py
,但是必须要以.py
结尾,其他的都不行。此外,文件名只能是英文字母、数字和下划线的组合。
如果当前目录下没有hello.py
这个文件,运行python hello.py
就会报错:
python hello.py
python: can't open file 'hello.py': [Errno 2] No such file or directory
报错的意思就是,无法打开hello.py
这个文件,因为文件不存在。这个时候,就要检查一下当前目录下是否有这个文件了。
还有同学问,能不能像.exe文件那样直接运行.py文件呢?在Windows上是不行的,但是,在Mac和Linux上是可以的,方法是在.py文件的第一行加上:
#!/usr/bin/env python
然后,通过命令:
<code>$ chmod a+x hello.py</code>
就可以直接运行hello.py了,比如在Mac下运行:
用print
加上字符串,就可以向屏幕上输出指定的文字。比如输出'hello, world'
,用代码实现如下:
>>> print 'hello, world'
print
语句也可以跟上多个字符串,用逗号“,”隔开,就可以连成一串输出:
>>> print 'The quick brown fox', 'jumps over', 'the lazy dog'
The quick brown fox jumps over the lazy dog
print
会依次打印每个字符串,遇到逗号“,”会输出一个空格,因此,输出的字符串是这样拼起来的:
print
也可以打印整数,或者计算结果:
>>> print 300
300
>>> print 100 + 200
300
因此,我们可以把计算100 + 200
的结果打印得更漂亮一点:
>>> print '100 + 200 =', 100 + 200
100 + 200 = 300
注意,对于100 + 200
,Python解释器自动计算出结果300
,但是,'100 + 200 ='是字符串而非数学公式,Python把它视为字符串,请自行解释上述打印结果。
现在,你已经可以用print
输出你想要的结果了。但是,如果要让用户从电脑输入一些字符怎么办?Python提供了一个raw_input
,可以让用户输入字符串,并存放到一个变量里。比如输入用户的名字:
>>> name = raw_input()
Michael
当你输入name = raw_input()
并按下回车后,Python交互式命令行就在等待你的输入了。这时,你可以输入任意字符,然后按回车后完成输入。
输入完成后,不会有任何提示,Python交互式命令行又回到>>>
状态了。那我们刚才输入的内容到哪去了?答案是存放到name
变量里了。可以直接输入name
查看变量内容:
>>> name
'Michael'
什么是变量?请回忆初中数学所学的代数基础知识:
设正方形的边长为a
,则正方形的面积为a x a
。把边长a
看做一个变量,我们就可以根据a
的值计算正方形的面积,比如:
若a=2,则面积为a x a = 2 x 2 = 4;
若a=3.5,则面积为a x a = 3.5 x 3.5 = 12.25。
在计算机程序中,变量不仅可以为整数或浮点数,还可以是字符串,因此,name
作为一个变量就是一个字符串。
要打印出name
变量的内容,除了直接写name
然后按回车外,还可以用print
语句:
>>> print name
Michael
有了输入和输出,我们就可以把上次打印'hello, world'
的程序改成有点意义的程序了:
name = raw_input()
print 'hello,', name
运行上面的程序,第一行代码会让用户输入任意字符作为自己的名字,然后存入name
变量中;第二行代码会根据用户的名字向用户说hello
,比如输入Michael
:
C:\Workspace> python hello.py
Michael
hello, Michael
但是程序运行的时候,没有任何提示信息告诉用户:“嘿,赶紧输入你的名字”,这样显得很不友好。幸好,raw_input
可以让你显示一个字符串来提示用户,于是我们把代码改成:
name = raw_input('please enter your name: ')
print 'hello,', name
再次运行这个程序,你会发现,程序一运行,会首先打印出please enter your name:
,这样,用户就可以根据提示,输入名字后,得到hello, xxx
的输出:
C:\Workspace> python hello.py
please enter your name: Michael
hello, Michael
每次运行该程序,根据用户输入的不同,输出结果也会不同。
在命令行下,输入和输出就是这么简单。
raw_input
和print
是在命令行下面最基本的输入和输出,但是,用户也可以通过其他更高级的图形界面完成输入和输出,比如,在网页上的一个文本框输入自己的名字,点击“确定”后在网页上看到输出信息。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者