数据类型与运算符
学习总结
今天主要学习了Python的一些基础知识,比如Python的数据类型,注释方式,运算符,与用户的交互方式等等。
主要内容
- Python的数据类型
- 注释方式
- 交互方式
- 运算符
- 解包
1. Python的数据类型
1.1 int
整型数据类型,Python的整形可以通过通过直接定义变量定义,或者通过内置方法int(x)定义
int(x, base=10)方法的原型是带进制的。
常用使用方法如下:
>>> a = 10
>>> a
10
>>> b = int(20)
>>> b
20
>>> c = int('23')
>>> c
23
>>> d = int('0xf', 16)
>>> d
15
1.2 float
float是属于Python中的浮点型数据类型,就是俗称的小数类型。定义方法是 直接用变量定义,如a=1.5等等,或者通过内置方法定义,如下所示
>>> a = 1.5
>>> a
1.5
>>> b = float(2.3)
>>> b
2.3
>>> c = float('2.4')
>>> c
2.4
1.3 str
str类型通常是处理文本信息的数据类型,用来描述相关事物。字符串可以直接用赋值符号定义,也可以通过内置方法str()定义 。其中str方法可以把一些支持转换成字符串的对象转换成字符串形式。
表示字符串的方式有多种,可以通过一对单引号,双引号,三引号引起来,这些都表示字符串。
>>> a = '1' >>> a '1' >>> b = "bcd" >>> b 'bcd' >>> c = str('abcd') >>> c 'abcd' >>> d = str([1, 2, 3]) >>> d '[1, 2, 3]'
1.4 dict
字典是最常用的数据类型之一了,它可以用来表示任何类型,是通过键值对的形式体现,我们要获取值,只能通过键来获取。键只能由不可变的数据类型组成,通常是字符串,值可以表示任何类型。而这也是字典的优势,我们可以通过有意义的键值来获取想要的数据,而不用像列表只能通过索引访问数据。字典的定义有很多,展示如下。
>>> d = {} >>> d['name'] = '小王' >>> d {'name': '小王'} >>> d = dict([('name', '小李'), ('age', 17)]) >>> d {'name': '小李', 'age': 17} >>> d = dict(name='xiaoli', age=18) >>> d {'name': 'xiaoli', 'age': 18}
1.5 list
列表是Python中记录多个数据的数据类型,列表中的内容可以是任何数据类型,取值是通过索引(下标)获取。列表的定义和前面一样,一种直接定义,或者通过内置方法定义。
>>> a = [1, 2, 'abd'] >>> a [1, 2, 'abd'] >>> b = list('abc') >>> b ['a', 'b', 'c'] >>> c =list() >>> c [] >>> a[0] 1
补充一下,列表和字典都可以随意的嵌套取值。
>>> d = {'province': {'Shanghai': '国际大都市', 'beijing': '首都'}}
>>> d['province']['Shanghai']
'国际大都市'
>>> l = [1, [2, 3, 4, 5]]
>>> l[1][3]
5
1.6 bool
只有两种取值,True 和 False,一般不会直接定义,大都应用于逻辑运算的结果判断。
>>> 3 > 4 False >>> 1 + 3 == 4 True
2. 注释方式
Python中注释不参与编译,在Python中共有两种注释方式,第一种是单行注释 以# 号开头,另一种是以一对三引号包围,里面的就是多行注释内容,形式就是下面这样。

3. 交互方式
3.1 输入:
python3中提供的输入方式就是input方法, input方法的参数是用户自己要添加的相应提示信息,方法返回字符串数据类型。
此处补充Python3的input方法和Python2的input方法不同,而与Python2的raw_input()方法相同。具体使用方式如下
Python3:
>>> s = input('input name>>>') input name>>>alex >>> s 'alex' >>> s = input('hello>>>') hello>>>abc >>> s 'abc'
Python2:
input方法必须自己指定数据类型,否则就会报变量未定义的错误
>>> a = input('输入: ') 输入: 123 >>> a 123 >>> a = input('输入: ') 输入: 'hello' >>> a 'hello' >>> a = input('输入: ') 输入: ab Traceback (most recent call last): File "<stdin>", line 1, in <module> File "<string>", line 1, in <module> NameError: name 'ab' is not defined
而raw_input则和Python3的input函数一样
>>> a = raw_input('input>> ') input>> abc >>> a 'abc'
3.2 输出:
Python中的输出是print方法,输出可以指定格式来格式化输出。
>>> print('I am a %s student' % 'good') I am a good student >>> print('My age is %d, I enjoy %s' % (24, 'reading')) My age is 24, I enjoy reading
print函数也是Python3和Python2的一个区别,在Python2中,print方法可以不需要加括号,而在Python3中则必须添加括号
Python2:
>>> print 'hello world' hello world
4. 运算符
4.1 常规的数学运算符 + - * / // **
常规加减乘除没啥好说的,特殊的如// 是除完后取整, **运算符是乘方运算符。 其中+*运算符还支持字符串、列表,
>>> 1 + 2 3 >>> 2 * 3 6 >>> 1 - 3 -2 >>> 2 / 3 0.6666666666666666 >>> 5 // 2 2 >>> 2 ** 3 8 >>> 'a' * 3 'aaa' >>> [0] * 3 [0, 0, 0] >>> 'a' + 'b' 'ab' >>> [0] + [1] [0, 1]
4.2 增量运算符
增量运算符只是省略了中间一步 a += 1 等价于 a = a + 1, 其他增量运算符如下所示
>>> a = 2 >>> a += 2 >>> a 4 >>> a *= 2 >>> a 8 >>> a /= 2 >>> a 4.0 >>> a -= 2 >>> a 2.0 >>> a **= 2 >>> a 4.0
4.3 逻辑运算符
Python中有3个逻辑运算符,与或非分别用and, or, not表示
值得注意的是and运算符左边假则停止判断后一项,整个式子判为False,or运算符左边式子为真后,后一项则不会去执行,整个式子判为True
>>> 1 and False False >>> 1 or False 1 >>> True or False True >>> not True False
5. 解包
Python支持同时赋值多个元素,特殊的有链式赋值和解包,其中*是Python打包和解包的运算符,*号可以同时解包多个元素。
>>> a, b, c = [1, 2, 3] >>> a, b, c (1, 2, 3) >>> a, *_, c = [1, 2, 3, 4, 5, 6] >>> _ [2, 3, 4, 5]

浙公网安备 33010602011771号