1.6 ? ?程序剖析 新程序在文件编辑器中打开后,让我们快速看一看它用到的 Python 指令,逐一查看每行代码。
1.6.1 ? ?注释
下面这行称为“注释”。
? ?# ?This ?program ?says ?hello ?and ?asks ?for ?my ?name.
Python 会忽略注释,你可以用它们来写程序注解,或提醒自己代码试图完成的事。这一行中,#标志之后的所有文本都是注释。 有时候,程序员在测试代码时,会在一行代码前面加上#,临时删除它。这称为“注释掉”代码。在你想搞清楚为什么程序不工作时,这样做可能有用。稍后,如果你准备还原这一行代码,可以去掉#。 Python 也会忽略注释之后的空行。在程序中,想加入空行时就可以加入。这会让你的代码更容易阅读,就像书中的段落一样。 1.6.2 ? ?print()函数 print()函数将括号内的字符串显示在屏幕上。
? ?print('Hello ?world!') print('What ?is ?your ?name?') ?# ?ask ?for ?their ?name 代码行 print('Hello ?world!')表示“打印出字符串'Hello ?world!'的文本”。Python执行到这行时,你告诉Python 调用? print()函数,并将字符串“传递”给函数。传递给函数的值称为“参数”。请注意,引号没有打印在屏幕上。它们只是表示字符串的起止,不是字符串的一部分。 也可以用这个函数在屏幕上打印出空行,只要调用 print()就可以了,括号内没有任何东西。 在写函数名时,末尾的左右括号表明它是一个函数的名字。这就是为什么在本书中你会看到 print(),而不是 print。第 2 章更详细地探讨了函数。 1.6.3 ? ?input()函数 函数等待用户在键盘上输入一些文本,并按下回车键。
? ?myName ?= ?input()
这个函数求值为一个字符串,即用户输入的文本。前面的代码行将这个字符串
数和一个字符串相加,因为这不符合Python 的语法。可以使用字符串版本的整数,修复这个错误。这在下一节中解释。
1.6.6 ?str()、int()和 float()函数 如果想要连接一个整数(如 29)和一个字符串,再传递给 print(),就需要获得值'29'。它是 29 ?的字符串形式。str()函数可以传入一个整型值,并求值为它的字符串形式,像下面这样: >>> ?str(29) '29' >>> ?print('I ?am ?' ?+ ?str(29) ?+ ?' ?years ?old.') I ?am ?29 ?years ?old. 因为 str(29)求值为’29’,所以表达式'I am ' + str(29) + ' years old.'求值为'I am ' + '29' + ' years old.',它又求值为'I? am 29 years old.'。这就是传递给 print()函数的值。 str()、int()和 float()函数将分别求值为传入值的字符串、整数和浮点数形式。请尝试用这些函数在交互式环境中转换一些值,看看会发生什么。 >>> ?str(0) '0' >>> ?str(-3.14) '-3.14' >>> ?int('42') 42 >>> ?int('-99') -99 >>> ?int(1.25) 1 >>> ?int(1.99) 1 >>> ?float('3.14') 3.14 >>> ?float(10) 10.0
前面的例子调用了 str()、int()和 float()函数,向它们传入其他数据类型的值,得到了字符串、整型或浮点型的值。 如果想要将一个整数或浮点数与一个字符串连接,str()函数就很方便。如果你有一些字符串值,希望将它们用于数学运算,int()函数也很有用。例如,input()函数总是返回一个字符串,即便用户输入的是一 个数字。在交互式环境中输入 spam = input(),在它等待文本时输入 101。 >>> ?spam ?= ?input() 101 >>> ?spam '101' 保存在 spam 中的值不是整数 101,而是字符串'101'。如果想要用 spam 中的值进行数学运算,那就用 int()函数取得 spam 的整数形式,然后将这个新值存在 spam 中。
文本和数字相等判断 虽然数字的字符串值被认为与整型值和浮点型值完全不同,但整型值可以与浮点值相等。
>>> ?42 ?== ?'42' False >>> ?42 ?== ?42.0
True >>> ?42.0 ?== ?0042.000 True
Python 进行这种区分,因为字符串是文本,而整型值和浮点型都是数字。
?
1.7 ? ?小结
你可以用一个计算器来计算表达式,或在文本处理器中输入字符串连接。甚至
可以通过复制粘贴文本,很容易地实现字符串复制。但是表达式以及组成它们的值 (操作符、变量和函数调用),才是构成程序的基本构建块。一旦你知道如何处理这些元素,就能够用Python 操作大量的数据。 最好是记住本章中介绍的不同类型的操作符(+、-、*、/、//、%和**是数学操作符,+和*是字符串操作符),以及 3 种数据类型(整型、浮点型和字符串)。 我们还介绍了几个不同的函数。print()和 input()函数处理简单的文本输出(到屏幕)和输入(通过键盘)。len()函数接受一个字符串,并求值为该字符串中字符的数目。 在下一章中,你将学习如何告诉 Python 根据它拥有的值,明智地决定什么代码要运行,什么代码要跳过,什么代码要重复。这称为“控制流”,它让你编写程序来做出明智的决定。 ?
|