1. 数据类型
整数类型int
Python里使用int表示整数类型,所能表示的整数只受限于机器的内存。
可以通过int()把其他类型转换为整型,比如:
>>> int("53")
53
把字符串转换成了整型,另外,字符串只要是中间没有空白字符的数字字符就都可以转换,比如:
>>> int(" 43 ")
43
但是如果中间有空格就会转换失败,比如:
>>> int("34 21")
就会转换失败,产生异常信息
字符串类型str
Python使用str表示字符串类型(Unicode字符序列)
字符串可以使用双引号或单引号封装,但是头尾两个引号要对称。
可以使用“[ ]”来按索引获取字符串中的某个字符,比如:
>>> "My Blog"[3]
'B'
但是不能用这样的表示来修改字符串中的某个字符,比如:
>>> "My Blog"[3] = 'C'
就会产生异常信息
利用str()几乎可以把任何数据类型转换为字符串。
2. 对象引用
Python中不使用变量,而是使用“对象引用”,这个概念和C++中的引用类型有些相似。
在定义一个对象引用的时候,不需要事先声明它的类型,只要直接跟对象关联就可以了,比如:
>>> x = "ABC"
>>> y = 54
>>> z = x
其实就是把名称 x 和对象 "ABC" 绑定,如果后面还有 x = "DEF" 之类的语句,就表示 x 和对象 "ABC" 没有关系了,而是和对象 "DEF" 绑定在一起。,如果某个对象没有一个对象引用和它绑定,Python就对这个对象进行回收处理。而且对象引用可以随时重新绑定任何数据类型。
3. 组合数据类型
元组和列表可以用于存储任意数量、任意类型的数据项。元组是固定的,创建之后就不能改变;列表是可变的,在需要的时候可以插入或移除数据项。
元组使用逗号创建,把数据库罗列出来,之间用逗号分隔,就构成了一个元组,比如:
>>> "One", "Two", "Three", 4, 5
("One", "Two", "Three", 4, 5)
如果想要创建只有一个元素的元组,也要在元素后跟一个逗号,以表示这是一个元组,如果不跟逗号的话,系统会认为这只是一个对象,比如:
>>> "One",
("One",)
>>> (1)
1
这样的元组在表示时,后面都会跟一个逗号。
列表使用"[ ]"创建,各元素之间也是以逗号相隔,如果是单个元素的列表则不需要在元素后加逗号,因为"[ ]" 已经表示这是一个列表了,比如:
>>> ["One", "Two", 3, 4]
["One", "Two", 3, 4]
>>> [1]
[1]
列表和元组中存储的是对象引用,也就是相当于是每个对象元素的引用的集合。
4. 逻辑操作符
身份操作符
is 操作符是一个二元操作符,如果左边的对象引用和右边的对象引用指向的是同一个对象的话,就会返回True。但是对intS,strS和许多其他的数据类型进行这样的比较是没有意义的,可以对列表进行比较 ,比如:
>>> a = ["One", 2, 3]
>>> b = ["One', 2, 3]
>>> a is b
False
两个对象的值虽然相等,但是是两个对象,在内存的不同位置。
最常见的使用is的情况是将数据项与内置的空对象None进行比较,None通常用作位置标记值,表示“未知”或“不存在”,比如:
>>> a = "abc"
>>> b = None
>>> a is not None, b is None
(True, True)
比较操作符
和C++中的比较操作符基本相同,不同的是可以结链比较,比如:
>>> a = 9
>>> 0<a<10
True
成员操作符
对于序列类型可以使用成员操作符来测试序列中有没有这个元素,比如:
>>> a = [2, 5, "one", 64]
>>> 5 in a
True
>>>2 not in a
False
>>> a = "onetwothree"
>>> "one" in a
True
逻辑运算符
and 和 or 返回的是决定结果的操作数,而不是布尔值,比如:
>>> a = 3
>>> b = 5
>>> c = 0
>>> a and b
5
>>> c and b
0
>>> b and c
0
>>> b and a
3
如果出现在布尔上下文中,则会按布尔值来处理,不会产生错误,和C语言的判断一样。
5. 控制流语句
if语句一般格式:
if 布尔表达式:
suit1
elif 布尔表达式:
suit2
elif 布尔表达式:
suit3
else:
suit4
如果suit中不需要进行处理,可以用pass语句,表示什么都不处理。在Python中一定要记的使用冒号。
while语句的一般格式:
while 布尔表达式:
suit
for...in...语句的一般格式:
for 元素 in 组合类型:
suit
异常处理的一般格式:
try:
try_suit
except 异常代码 as 变量
except_suit1
except 异常代码 as 变量
except_suit2
其中的变量部分存储异常的信息文本,as 变量 部分如果不关心异常具体信息可以忽略不要。
6. 算术操作符
和C++中的基本一致,其中整数除法/的结果是小数,而不是整数。
7. 输入输出
print()函数用于输出
input()函数用于输入
8. 函数的创建与调用
创建函数的一般格式:
def functionname(参数1, 参数2, ...)
suit
执行def语句时,会创建一个函数对象,函数名就是这个函数对象的对象引用。
实际上很多时候不需要我们自己定义函数,因为标准库中已经有足够多的函数可以供我们调用了。要调用一个模块中的函数,要先把这个模块引入,比如:
import sys
引用之后就可以使用其中的类、函数和变量了。使用模块中的对象的语法就像C++中的命名空间,比如:
sys.argv