[toc]
1. 交互式解释器
>>>print("Hello,world!")
Hello,world!
- IDLE、CMD、linux命令行解释器等。
- Python结尾无需加分号。
2. 算法是什么
3. 数和表达式
算术运算
>>> 10 // 3 #向下圆整
3
>>> -10 // 3 #负数的情况下,圆整后将离0更远。
-4
>>> 10 % 3 #求余运算符%
1
>>> 2 ** 3 #计算乘方,求幂
8
十六进制、八进制和二进制
>>> 0xAF
175
>>> 010
8
>>> 0b1011010010
722
4. 变量
>>> x = 3 #将3赋值给变量x
>>> x * 2
6
- 使用Python变量前必须给它赋值,因为Python变量没有默认值。
- 在Python中,名称(标识符)只能由字母、数字和下划线(_)构成,且不能以数字打头。因此 Plan9 是合法的变量名,而 9Plan 不是。
5. 语句
>>> 2 * 2 #这是表达式
4
>>> print(2 * 2) #这是语句
4
6. 获取用户输入
>>> x = input("num1:") #这个数被input(以字符串的方式)返回并赋值给x
num1:3
>>> y = input("num2:") #这个数被input(以字符串的方式)返回并赋值给y
num2:5
>>> print(int(x) * int(y)) #使用int将字符串转换为整数相乘并打印出来
15
7. 函数
- 乘方运算符( ** )执行幂运算。实际不是使用这个运算符,而是使用函数 pow 。
>>> 2 ** 3
8
>>> pow(2, 3) #调用函数:你向它提供实参(2 和 3),而它返回一个值。
8
- Python提供了很多函数,你也可以自己编写函数,我们通常将 pow 等标
准函数称为内置函数。
8. 模块
- 可将模块视为扩展,通过将其导入可以扩展Python功能。要导入模块,可使用特殊命令import 。
- 函数 floor 包含在模块 math 中。
>>> import math
>>> math.floor(32.9)
32
- 可使用变量来引用函数(以及其他大部分Python元素)。
- 执行赋值语句 foo =math.sqrt 后,就可使用 foo 来计算平方根。例如, foo(4) 的结果为 2.0 。
9. 保存并执行程序
- 交互式解释器能够实时地测试解决方案以及尝试使用Python。然而,等你退出交互式解释器时,你在其中编写的所有代码都将丢失。
- hello.py(扩展名.py)创建文本,后缀名为.py
从命令提示符运行 Python 脚本
Windows使用命令来执行这个脚本:
C:\>python hello.py
在UNIX系统中,可使用如下命令:
$ python hello.py
让脚本像普通程序一样
- 将下面的代码作为脚本的第一行,就可在UNIX中轻松运行脚本:
#!/usr/bin/env python
- 在末尾添加如下代码行:
input("Press
") - 现在运行这个程序并输入名字后,DOS窗口将包含如下内容:
What is your name? Gumby
Hello, Gumby!
Press
- 等你按回车键后,窗口将立即关闭,因为程序结束了。
注释
- 井号( # ):在代码中,井号后面到行尾的所有内容都将被忽略。
单行注释
# 打印圆的周长:
print(2 * pi * radius)
多行注释
- 多行注释用三个单引号 ''' 或者三个双引号 """ 将注释括起来
'''
这是多行注释,用三个单引号
这是多行注释,用三个单引号
这是多行注释,用三个单引号
'''
"""
这是多行注释,用三个双引号
这是多行注释,用三个双引号
这是多行注释,用三个双引号
"""
10. 字符串
单引号、双引号字符串 和 引号转义
- 与数一样,字符串也是值:
>>> "Hello, world!"
'Hello, world!'
- 单引号和双引号,值里面有单引号就用双引号括起来,反之亦言。
>>> "Let's go!"
- 或者对其转义
>>> 'Let\'s go!'
拼接字符串
- 利用 + 号
>>> "Hello, " + "world!"
'Hello, world!'
>>> x = "Hello, "
>>> y = "world!"
>>> x + y
'Hello, world!'
字符串表示 str 和 repr
- Python打印所有的字符串时,都用引号将其括起。
- 这是因为Python打印值时,保留其在代码中的样子,而不是你希望用户看到的样子。
- 但如果你使用print ,结果将不同。加上换行符的编码 \n ,差别将更明显。
>>> "Hello,\nworld!"
'Hello,\nworld!'
>>> print("Hello,\nworld!")
Hello,
world!
- 使用 repr 通常会获得值的合法Python表达式表示。
- 使用 str 能以合理的方式将值转换为用户能够看懂的字符串。
>>> print(repr("Hello,\nworld!"))
'Hello,\nworld!'
>>> print(str("Hello,\nworld!"))
Hello,
world!
长字符串、原始字符串和字节
长字符串
- 要表示很长的字符串(跨越多行的字符串),可使用三引号(而不是普通引号),还可使用三个双引号,如 """like this""" 。
print('''This is a very long string. It continues here.
And it's not over yet. "Hello, world!"
Still here.''')
- 常规字符串也可横跨多行,只要在行尾加上反斜杠。
>>> 1 + 2 + \
4 + 5
12
>>> print \
('Hello, world')
Hello, world
原始字符串
- 原始字符串不以特殊方式处理反斜杠,让字符串包含的每个字符都保持原样。
- 原始字符串用前缀 r 表示。
>>> print(r'C:\nowhere')
C:\nowhere
>>> print(r'C:\Program Files\fnord\foo\bar\baz\frozz\bozz')
C:\Program Files\fnord\foo\bar\baz\frozz\bozz
- 原始字符串不能以单个反斜杠结尾。如果最后一个字符为反斜杠,且未对其进行转义,Python将无法判断字符串是否到此结束。
- 基本技巧是将反斜杠单独作为一个字符串,下面是一个简单的示例:
>>> print(r'C:\Program Files\foo\bar' + '\\')
C:\Program Files\foo\bar\
字节Unicode、 bytes 和 bytearray
11. 小结
- 算法:算法犹如菜谱,告诉你如何完成特定的任务。从本质上说,编写计算机程序就是使用计算机能够理解的语言(如Python)描述一种算法。这种对机器友好的描述被称为程序,主要由表达式和语句组成。
- 表达式:表达式为程序的一部分,结果为一个值。例如, 2 + 2 就是一个表达式,结果为4 。简单表达式是使用运算符(如 + 或 % )和函数(如 pow )将字面值(如 2 或 "Hello")组合起来得到的。通过组合简单的表达式,可创建复杂的表达式,如 (2 + 2) *(3 - 1) 。表达式还可能包含变量。
- 变量:变量是表示值的名称。通过赋值,可将新值赋给变量,如 x = 2。赋值是一种语句。
- 语句:语句是让计算机执行特定操作的指示。这种操作可能是修改变量(通过赋值)、将信息打印到屏幕上(如 print("Hello, world!"))、导入模块或执行众多其他任务。
- 函数:Python函数类似于数学函数,它们可能接受参数,并返回结果。
- 模块:模块是扩展,可通过导入它们来扩展Python的功能。例如,模块 math包含多个很有用的函数。
- 程序:你通过练习学习了如何编写、保存和运行Python程序。
- 字符串:字符串非常简单。它们其实就是一段文本,其中的字符是用Unicode码点表示的。然而,对于字符串,需要学习的知识有很多。