Python 2.6 非程序员教程/Hello, World
你应该知道如何在文本编辑器或 IDLE 中编辑程序,保存文件并在文件保存到磁盘后运行文件。
从一开始,编程教程就以一个小程序开始,叫做“Hello, World!”[1] Python 3.0 中的语法有所改变。如果你使用的是 Python 3.0,你应该阅读 Python 3 非程序员教程。所以这是 Python 2.6 的例子。
print "Hello, World!"
如果你使用命令行运行程序,那么用文本编辑器输入它,保存为 hello.py
,然后用 python hello.py
运行它。
否则,进入 IDLE,创建一个新窗口,并按照 创建和运行程序 部分创建程序。
当这个程序运行时,它会打印出以下内容
Hello, World!
现在我不会每次都告诉你,但是当我向你展示一个程序时,我建议你输入它并运行它。当我输入它时,我学得更快,你可能也是。
现在这里有一个更复杂的程序
print "Jack and Jill went up a hill"
print "to fetch a pail of water;"
print "Jack fell down, and broke his crown,"
print "and Jill came tumbling after."
当你运行这个程序时,它会打印出以下内容
Jack and Jill went up a hill to fetch a pail of water; Jack fell down, and broke his crown, and Jill came tumbling after.
当计算机运行这个程序时,它首先看到这一行
print "Jack and Jill went up a hill"
所以计算机打印出
Jack and Jill went up a hill
然后计算机向下移动到下一行,看到
print "to fetch a pail of water;"
所以计算机打印到屏幕上
to fetch a pail of water;
计算机继续查看每一行,遵循命令,然后继续下一行。计算机不断运行命令,直到它到达程序的末尾。
现在可能是给你一些解释正在发生的事情 - 以及一些编程术语的好时机。
我们上面做的是使用一个叫做 print
的 命令。print
命令后面跟着一个或多个 参数。所以在这个例子中
print "Hello, World!"
只有一个 参数,即 "Hello, World!"
。请注意,这个参数是一组用双引号 (") 括起来的字符。这通常被称为 字符串。另一个字符串的例子是 "Jack and Jill went up a hill"
。
命令及其参数统称为 语句,所以
print "Hello, World!"
就是一个语句的例子。
现在可能已经足够多的术语了。
这里还有另一个程序
print "2 + 2 is", 2 + 2
print "3 * 4 is", 3 * 4
print "100 - 1 is", 100 - 1
print "(33 + 2) / 5 + 11.5 is", (33 + 2) / 5 + 11.5
这里是在程序运行时的 输出
2 + 2 is 4 3 * 4 is 12 100 - 1 is 99 (33 + 2) / 5 + 11.5 is 18.5
如你所见,Python 可以将你的六百美元电脑变成一个两美元的计算器。
在这个例子中,print 命令后面跟着两个参数,每个参数之间用逗号隔开。所以对于程序的第一行
print "2 + 2 is", 2 + 2
第一个参数是字符串 "2 + 2 is"
,第二个参数是 数学表达式 2 + 2
,它通常被称为 表达式。
需要注意的是,字符串按原样打印(字符串是双引号内的内容,但不包括双引号本身。所以字符串在打印时不包含引号。)但 表达式 被 评估(换句话说,转换)为它的实际值。
Python 有六个基本的数字运算
运算 | 符号 | 例子 |
---|---|---|
幂(指数) | **
|
5 ** 2 == 25
|
乘法 | *
|
2 * 3 == 6
|
除法 | /
|
14 / 3 == 4
|
余数(模运算) | %
|
14 % 3 == 2
|
加法 | +
|
1 + 2 == 3
|
减法 | -
|
4 - 3 == 1
|
注意,除法遵循规则,如果一开始没有小数,那么最终也不会有小数。以下程序展示了这一点
print "14 / 3 = ", 14 / 3
print "14 % 3 = ", 14 % 3
print
print "14.0 / 3.0 =", 14.0 / 3.0
print "14.0 % 3.0 =", 14.0 % 3.0
print
print "14.0 / 3 =", 14.0 / 3
print "14.0 % 3 =", 14.0 % 3
print
print "14 / 3.0 =", 14 / 3.0
print "14 % 3.0 =", 14 % 3.0
print
输出
14 / 3 = 4 14 % 3 = 2 14.0 / 3.0 = 4.66666666667 14.0 % 3.0 = 2.0 14.0 / 3 = 4.66666666667 14.0 % 3 = 2.0 14 / 3.0 = 4.66666666667 14 % 3.0 = 2.0
注意 Python 如何根据是否使用小数值来给出一些问题的不同答案。
运算顺序与数学中相同
- 括号
()
- 指数
**
- 乘法
*
、除法/
和余数%
- 加法
+
和减法-
因此,在需要时使用括号来构建你的公式。
在编程中,你经常做一些复杂的事情,将来可能不记得自己做了什么。发生这种情况时,程序可能应该被注释。注释 是你和其他程序员用来解释正在发生的事情的说明。例如
# Not quite PI, but an incredible simulation
print 22.0 / 7.0 # 355/113 is even more incredible rational approx to PI
输出
3.14285714286
注意,注释以井号开头:#
。注释用于与阅读程序的其他人以及你未来的自己进行交流,以清楚地说明什么是复杂的。
注意,任何文本都可以放在注释之后,当程序运行时,#
之后到该行末尾的文本会被忽略。#
不必放在新行的开头
# Output PI on the screen
print 22.0 / 7.0 # Well, just a good approximation
每一章(最终)都会包含本章介绍的编程特性的例子。你应该至少浏览一下,看看是否理解它们。如果你不理解,你可能需要输入它们,看看会发生什么。随意修改它们,看看会发生什么。
Denmark.py
print "Something's rotten in the state of Denmark."
print " -- Shakespeare"
输出
Something's rotten in the state of Denmark. -- Shakespeare
School.py
# This is not quite true outside of USA
# and is based on my dim memories of my younger years
print "First Grade"
print "1 + 1 =", 1 + 1
print "2 + 4 =", 2 + 4
print "5 - 2 =", 5 - 2
print
print "Third Grade"
print "243 - 23 =", 243 - 23
print "12 * 4 =", 12 * 4
print "12 / 3 =", 12 / 3
print "13 / 3 =", 13 / 3, "R", 13 % 3
print
print "Junior High"
print "123.56 - 62.12 =", 123.56 - 62.12
print "(4 + 3) * 2 =", (4 + 3) * 2
print "4 + 3 * 2 =", 4 + 3 * 2
print "3 ** 2 =", 3 ** 2
print
输出
First Grade 1 + 1 = 2 2 + 4 = 6 5 - 2 = 3 Third Grade 243 - 23 = 220 12 * 4 = 48 12 / 3 = 4 13 / 3 = 4 R 1 Junior High 123.56 - 62.12 = 61.44 (4 + 3) * 2 = 14 4 + 3 * 2 = 10 3 ** 2 = 9
- 编写一个程序,打印你的全名和生日作为单独的字符串。
- 编写一个程序,展示所有 6 个数学函数的使用。
1. 编写一个程序,打印你的全名和生日作为单独的字符串。
print "Ada Lovelace", "born on", "November 27, 1852"
2. 编写一个程序,展示所有 6 个数学运算符的使用。
#Anything along these lines is acceptable:
#Addition
print "2 + 5 = ", 2 + 5
#subtraction
print "9 - 3 = ", 9 - 3
#multiplication
print "3 * 3 = ", 3 * 3
#division
print "90 / 5 = ", 90 / 5
#exponents
print "7 to the power of 2 (squared) = ", 7 ** 2
#remainder
print "the remainder when doing 22 / 9 = ", 22 % 9