1.1 安装 python
1.1.1 Windows
登录官网,下载对应版本后点击安装就可以了。
1.1.2 Linux 和 UNIX
在linux 上用pyenv 进行 Python 多版本的管理。
1.1.3 苹果机
登录官网,下载对应版本后双击挂载就可以了。
1.1.4 其他发行版本
除官方版本以外,还可以尝试 ActivePython 版本,它与标准版的最大区别在于额外包含了许多独立的工具(模版)。如果你用 Windows 的话,Active Python 绝对值得一试。
1.1.5 时常关注,保持更新。
访问相应版本的发布页面,可以查看该版本的特性。
还可以访问 Python 邮件列表(https://mail.python.org/mailman/listinfo) 来了解最新发布的第三方 Python 模块和软件资讯。
1.2 交互式解释器
在已安装 python 的 linux 上,输入 python 后即可打开 交互式解释器
1.3 算法是什么
算法是对“如何做某事的一种详细描述”。同义词:步骤。
1.4 数字和表达式
- 在多数情况下,常用算数运算符的功能和计算器的相同。
- 数值的除法(/)总是返回一个浮点数,要获取整数使用//操作符。举个例子:
>>> 1/2
0.5
>>> 1//2 #取整数
0
- 特殊运算符
%
,是取余运算符。举个例子:
>>> 10 % 3 # 10 除以 3余 1
1
>>> 9 % 3 # 9 除以 3 余 0
0
- 幂(乘方)运算
幂运算符比取反(一元减运算符)的等级要高,所以 -3 2 等同于 -(32)。如果想要计算(-3)**2,就需要显式说明。举个例子:
>>> 2**3
8
>>> -3**2
-9
>>> (-3)**2
9
1.4.1 长整数
python3 中已经取消了长整数,可以用 int()
函数,来获得数据类型。
1.4.2 十六进制和八进制
十六进制和八进制的首位数字都是0
(数字零)。举个例子:
>>> hex(12) #`hex()`函数可以将十进制转换为八进制
'0xc' # 数字零+小写字母'xc'
>>> oct(12) #`oct()`函数可以将十进制转换为十六进制
'0o14' # 数字零+小写字母'0'+数字14
1.5 变量
变量即代表(或者引用)某值的名字,例如:
>>> x=3
变量名可以包括字母、数字和下划线(_) ,变量名不能以数字开头,所以 plan9
是正确的,9plan
是错误的。
1.6 语句
语句是做某件事(即告诉计算机做什么)。其一般特征是:对某一事物进行了改变。例如:用 print()
语句改变了屏幕显示的内容,用赋值语句改变了变量。
>>> print(2*2)
4
>>> x = 3
>>>
注:表达式则是只是单纯的表示某件事, 例如:
>>> 2*2
1.7 获取用户输入
可以用input()
函数来获取用户输入的变量值。例如:
>>> x = input( "x: ")
x:34
1.8 函数
函数是已经编写好的,用来实现特定功能的代码段。
1.9 模块
一些函数的集合,可以导入到 Python 中扩展其功能。执行命令为 import 模块名
。例如:
>>> import math
>>> math.floor(32.9)
>>> 32
在确定自己不会导入多个同名函数(从不同模块中)的情况下,可以使用import
命令的另一种形式:
>>> from math import sqrt
>>> sqrt(9)
3.0
注: from ... import ...
语句,有可能会导致隐藏的冲突,所以若非真的需要 from
这个形式的 模块导入语句,否则应该坚持使用普通的 import
语句。
1.10 保存并执行程序
- 保存程序:将写好的代码保存到后缀是
.py
的文件中。 - 运行程序:
- 命令行下可以直接执行:
python /路径/文件名.py
。 - Windows 视窗下可以直接双击文件运行。
- 注释程序:符号为 井号(#),在它右边的一切内容都会被忽略。
注:程序员应该确保注释说的都是重要的事情,而不要重复代码中显而易见的内容。
1.11 字符串
字符串即一串字符,有多种用法,但其中最主要的用法是表示一些文本。例如:Hello, World!
。
1.11.1 单引号字符串和转义引号
-
单引号和双引号的效果是一样的,可以交叉使用,但不能混用。例如:
>>> ' "Hello, World!" she said' # 正确
' "Hello, World!" she said'
>>> "Hello, World!' # 错误
File "<stdin>", line 1
"Hello, World!'
^
SyntaxError: EOL while scanning string literal -
如果语句中存在单/双引号,需要使用反斜线(\)对其进行转义:
>>>'Let's go!' #都是单引号
"Let's go!"
>>>""Hello,World!" she said" #都是双引号
'"Hello,World!" she said'
>>>"Let's say 'Hello,World!'?" #单双引号混用-正确
"Let's say 'Hello,World!'"
>>>'Let's say "Hello,World!"?' #单双引号混用-错误
'Let's say "Hello,World!"'
1.11.2 拼接字符串
使用+
像进行加法运算一样进行拼接,例如:
>>>"Hello, "+"World!"
'Hello, World!'
1.11.3 字符串表示,str()
和 repr()
- 将值转化为字符串的机制有两种,分别是:
str()
函数和repr()
函数。 - 他们的主要区别是:函数
str()
让字符串更易于阅读,而repr()
则把字符串转换为合法的 Python 表达式。
1.11.4 input()
和 raw_input()
的比较
Python3.x 已经把 input()
和raw_input()
整合在一起,没有 raw_input()
了。
1.11.5 长字符串、原始字符串和Unicode
-
长字符串由于跨越多行,所以可以用三个单引号代替('''),表示形式如下:
print('''This is a very long string. Itcontinues here. And it's not over yet. "Hello, World! " Still here. ''')
-
原始字符串
原始字符串以r
开头,它不会将反斜线当成特殊字符。在原始字符串中输入的每个字符串都会与书写的方式保持一致。举例子:
#我们知道\n
可以表示为换行,并可放于字符串中,如下:
>>> print('hello, \nworld !')
hello,
world !
#如果我们不想换行呢?这时原始字符串就派上用场了。
>>> print(r' C:\nowhere ')
C:\nowhere
注意:原始字符串不能以反斜线(\)结尾,如果最后一个字符是反斜线的话,可以将其单独作为一个字符串来处理。例如:
>>>print(r' C:\nowhere' '\') #结尾的反斜线用反斜线进行转义,所以其形式写为 '\'
C:\nowhere\
1.12 小结
- 本章学到的东西:
- 算法:
算法是对如何完成一项任务的详尽描述。实际上,在编写程序的时候,就是用计算机能够理解的语言来描述算法。这种对机器友好的描述就叫程序。程序主要包含表达式和语句。 - 表达式:
表达式用于表示值。例如;2+2是表达式,表示数值4。简单的表达式是通过使用运算符(如+
或者%
)和函数(如pow()
)对字面值(比如2或者“Hello”)进行处理而构建起来的。通过把简单的表达式联合起来可以构建更加复杂的表达式(如(-2-2)*(-5+6))。表达式也可以包含变量。 - 变量:
变量是一个名字,用于表示某个值。通过x=2
这样的赋值可以为变量赋予新的值。赋值也是一类语句。 - 语句:
语句是告诉计算机做某些事的指令。它可能设计改变变量(如赋值操作)、向屏幕打印内容(如print('Hello, World! ')
)、导入模块或者许多其它操作。 - 函数:
和数学中的函数类似,可以带有参数,并且返回值。 - 模块:
模块是对 Python 功能的一些拓展,可以被导入到 Python 中。例如:math 模块中就有许多有用的数学函数。 - 程序:
程序主要由表达式和语句构成。 - 字符串:
字符串就是文本片段,由一串字符构成。
- 本章涉及到的新函数
函数 | 描述 |
---|---|
abs(number) | 返回数字的绝对值 |
cmath.sqrt(number) | 返回平方根,也可用应用于负数 |
float(object) | 将字符串和数字转换为浮点数,默认提供17位精度(小数点后16位) |
help() | 提供交互式帮助 |
input() | 获取用户输入 |
int(object) | 将字符串和数字转换为整数 |
long(object) | 将字符串和数字转换为长整数,在Python3.x 中已经和int() 整合了 |
math.ceil(number) | 返回数的上入整数,返回一个大于或等于 x 的最小整数 |
math.floor(number) | 返回数的下入整数,返回一个等于或小于 x 的最大整数 |
math.sqrt(number) | 返回平方根,不适用于负数 |
pow(x, y[, z]) | 返回 x 的 y 次幂,所得结果对 z 取余数,符号[ ]表示z是可选参数 |
raw_input(prompt) | 或者用户输入,结果被看作原始字符串,在Python3.x 中已经和input() 整合了 |
repr(boject) | 将返回的字符串转换为合法的 Python 表达式 |
round(number[, ndigits]) | 根据给定的精度对数字进行四舍五入,符号[ ]表示精度是可选参数,默认精度精确到个位。 |
str | 将值转换为字符串 |
网友评论