Python第2课-第一个Python程序

在本节课中,你将运行自己的第一个程序 —— hello_world.py。在这之前,需要熟悉两个概念:命令行模式和Python交互模式。同时掌握输入和输出。

1. 命令行模式和Python交互模式

1.1 命令行模式

MAC 直接打开终端,也可在"应用程序 - 实用工具 - 终端"中找到,它的提示符类似这样Macbook:~cunxi$,美元符号的前面是用户名。

Last login: Tue Dec 19 21:34:57 on ttys000

Macbook-pro-2:~ cunxi $

Windows 电脑,选择开始菜单、选择“命令提示符”,就进入到命令行模式,它的提示符类似这样C:\>:

Microsoft Windows [Version 10.0.0]

(c) 2015 Microsoft Corporation. All rights reserved.

C:\> _

1.2 Python交互模式

在命令行模式下敲命令:

$ python

看到类似如下的一堆文本输出,然后就进入到Python交互模式,它的提示符是 >>> 。

$ python

Python 3.6.2 |Anaconda, Inc.| (default, Sep 21 2017, 18:29:43)

[GCC 4.2.1 Compatible Clang 4.0.1 (tags/RELEASE_401/final)] on darwin

Type "help", "copyright", "credits" or "license" for more information.

>>>

在Python交互模式下输入exit() 并回车,就退出了Python交互模式,并回到命令行模式:

$ python

Python 3.6.2 |Anaconda, Inc.| (default, Sep 21 2017, 18:29:43)

[GCC 4.2.1 Compatible Clang 4.0.1 (tags/RELEASE_401/final)] on darwin

Type "help", "copyright", "credits" or "license" for more information.

>>> exit()

$

还可以找到安装的应用程序,选择IDLE双击打开,这种方式打开时,输入exit() 后会关闭当前窗口,不会回到命令行模式。

了解了如何启动和退出Python的交互模式,我们就可以正式开始编写Python代码了。

在写代码之前,千万不要用“复制”、“粘贴”把代码从页面粘贴到你自己的电脑上。写程序也讲究一个感觉,你需要一个字母一个字母地把代码自己敲进去,在敲代码的过程中,初学者经常会敲错代码:拼写不对,大小写不对,混用中英文标点,混用空格和Tab键,所以,你需要仔细地检查、对照,才能以最快的速度掌握如何写程序。

在交互模式的提示符>>>下,直接输入代码,按回车,就可以立刻得到代码执行结果。现在,试试输入100+200,看看计算结果是不是300:

>>> 100 + 200

300

如果要让Python打印出指定的文字,可以用print()函数,然后把希望打印的文字用单引号或者双引号括起来,但不能混用单引号和双引号:

>>> print('hello, world')

hello,world

这种用单引号或者双引号括起来的文本在程序中叫字符串,今后我们还会经常遇到。

最后,用exit()退出Python,我们的第一个Python程序完成!唯一的缺憾是没有保存下来,下次运行时还要再输入一遍代码。

1.3 命令行模式和Python交互模式

请注意区分命令行模式和Python交互模式。

在命令行模式下,可以执行python进入Python交互式环境,也可以执行python hello.py运行一个.py文件。执行一个.py文件只能在命令行模式执行。

如果敲一个命令python hello.py,看到如下错误:

$ python hello.py

python: can't open file 'hello.py': [Errno 2] No such file or directory

错误提示No such file or directory说明这个hello.py在当前目录找不到,必须先把当前目录切换到hello.py所在的目录下,才能正常执行:

$ cd /Users/cunxi/Desktop/Python_source

work $ python hello.py

Hello,World!

此外,在命令行模式运行.py文件和在Python交互式环境下直接运行Python代码有所不同。Python交互式环境会把每一行Python代码的结果自动打印出来,但是,直接运行Python代码却不会。

例如,在Python交互式环境下,输入:

>>> 100 + 200 + 300

600

直接可以看到结果600。

但是,写一个calc.py的文件,内容如下:

100 + 200 + 300

然后在命令行模式下执行:

work $ python calc.py

发现什么输出都没有。

这是正常的。想要输出结果,必须自己用print()打印出来。把calc.py改造一下:

print(100 + 200 + 300)

再执行,就可以看到结果:

work $ python calc.py

600

最后,Python交互模式的代码是输入一行,执行一行,而命令行模式下直接运行.py文件是一次性执行该文件内的所有代码。可见,Python交互模式主要是为了调试Python代码用的,也便于初学者学习,它不是正式运行Python代码的环境!

2. 使用文本编辑器

在Python的交互式命令行写程序,好处是一下就能得到结果,坏处是没法保存,下次还想运行的时候,还得再敲一遍。

所以,实际开发的时候,我们总是使用一个文本编辑器来写代码,写完了,保存为一个文件,这样,程序就可以反复运行了。

程序员花大量时间来编写、阅读和编辑代码,因此使用的文本编辑器必须能够尽可能提高完成这种工作的效率,高效的编辑器应突出代码的结构,让你在编写代码时就能够发现常见的bug。它还应包含自动缩进功能、显示代码长度的标志以及用于执行常见操作的快捷键。

如果你是编程新手,应使用具备上述功能但学习起来又不难的编辑器。另外,最好对更高级的编辑器有所了解,这样就知道何时该考虑升级编辑器了。

对于每种主要的操作系统,比较流行的是以下编辑器:使用Linux或Windows系统的初学者可使用Geany;使用OS X的初学者可使用Sublime Text(它在Linux和Windows系统中的效果也很好),我这里主要讲Sublime Text 的安装配置及定制。

Sublime Text 是一款简单的文本编辑器,比较易于安装,能够直接运行几乎所有程序。它还能在内嵌在Sublime Text 窗口内的终端会话中运行代码,能够轻松查看输出结果。

Sublime Text 的许可策略非常灵活,可以永久的免费使用这款编辑器,如果想长期使用,建议购买许可证。

2.1 安装 Sublime Text

2.1.1 在 OS X 系统中安装 Sublime Text

要下载Sublime Text 安装程序,可访问http://sublimetext.com/3,单机链接Download,并查找OS X 安装程序。下载安装程序后,打开它,再将Sublime Text 图标拖到文件夹Applications 。

2.1.2 在 Linux 系统中安装 Sublime Text

在大多数Linux系统中,安装Sublime Text 的最简单方式是通过终端会话,如下所示:

$ sudo add-apt-repository ppa:webupd8team/sublime-text-3

$ sudo apt-get update

$ sudo apt-get install sublime-text-installer

2.1.3 在 Windows 系统中安装 Sublime Text

从http://sublimetext.com/3下载Windows安装程序。

2.2 在Sublime Text 中运行 Python 程序

如果使用的是系统自带的Pythn版本,无需调整任何设置就能运行程序。要运行程序,可选择菜单Tools - Build 或 Ctrl + B。运行hello_world.py时,你将在Sublime Text窗口的最底部看到一个终端屏幕,其中包含以下输出:

Hello Python World!

[ Finished in 0.1s ]

2.3 配置Sublime Text

如果安装了多个Python版本或者Sublime 不能自动运行程序,可能需要设置一个配置文件。首先需要知道Python解释器的完整路径,为此,在Linux或OS X 系统中执行如下命令:

$ type -a python3

python3 is /usr/local/bin/python3

如果使用的Windows系统,要获悉Python解释器的路径,请参阅“Python第1课 - Python安装”一节中“在Windows系统中安装Python3”。

现在启动Sublime Text,并选择菜单Tools - Build System - New Build System,这将打开一个新的配置文件。删除其中的所有内容,再输入以下内容:

Python3 .sublime-build

{

"cmd":["/usr/local/bin/python3","-u","$file"],

}

这些代码让Sublime Text 使用命令python3 来运行当前打开的文件。请确保其中的路径为你在前一步获取的路径(在Windows系统中,该路径类似于C:/Python35/python)。将这个配置文件命名为Python3 .sublime-build,并将其保存到默认目录 —— 选择菜单Save 时

Sublime Text 打开的目录。

2.4 定制 Sublime Text 的设置

下面来定制之前提到的功能,以尽可能提高Sublime Text 的效率。

1.将制表符转换为空格

选择菜单View - Indentation,核实选择了复选框Indent Using Spaces。如果没有选择该复选框,现在请选择。

2.设置行长标志

选择菜单View - Ruler,再单击80,Sublime Text 将在这个80字符标志处放置一条竖线,编辑代码时一行不要超过这条线。

3.缩进和取消缩进代码块

要缩进代码块,可选择代码块,再选择菜单Edit - Line - Indent或按Ctrl + ] 。要取消缩进代码块,可选择菜单Edit - Line - Unindent或按Ctrl + [ 。

4.将代码块注释掉

要将代码块注释掉,可选择代码块,再选择菜单Edit - Comment - Toggle Comment或按Ctrl + /。要取消代码块注释,再次执行这个命令。

3. 输出

用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把它视为字符串。

4. 输入

现在,你已经可以用print()输出你想要的结果了。但是,如果要让用户从电脑输入一些字符怎么办?Python提供了一个input(),可以让用户输入字符串,并存放到一个变量里。比如输入用户的名字:

>>> name = input()

Michael

当你输入name = 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 = input("please enter your name:")

print('hello,', name)

运行上面的程序,第一行代码会让用户输入任意字符作为自己的名字,然后存入name变量中;第二行代码会根据用户的名字向用户说hello,比如输入Michael:

$ python hello.py

please enter your name: Michael

hello, Michael

每次运行该程序,根据用户输入的不同,输出结果也会不同。

在命令行下,输入和输出就是这么简单。

任何计算机程序都是为了执行一个特定的任务,有了输入,用户才能告诉计算机程序所需的信息,有了输出,程序运行后才能告诉用户任务的结果。

输入是Input,输出是Output,因此,我们把输入输出统称为Input/Output,或者简写为IO。

input()和print()是在命令行下面最基本的输入和输出,但是,用户也可以通过其他更高级的图形界面完成输入和输出,比如,在网页上的一个文本框输入自己的名字,点击“确定”后在网页上看到输出信息。

下一节课开始讲变量和简单数据类型。

欢迎关注:Python公开课


鲜花

握手

雷人

路过

鸡蛋
用心服务创业者
0851-88611148
周一至周五 9:00-18:00
意见反馈:admin@0851life.com

扫一扫关注我们

Powered by 童码少儿编程 X3.4© 2001-2013 0851life Inc.|网站地图