04 数据类型和运算符 | Python入门教程

数据类型

数字 (Number)

整型 (Integer)

整型 (Integer) 是表示整数的类型,类型名为int

变量,是储存数据的抽象概念。用等号=给变量赋值,Python允许同时给多个变量赋值。

变量的名字叫做变量名,变量名不能是Python保留字 (print, for … ) 。

变量的值在程序运行时可以被修改。

>>> a = 10
>>> b, c = 1, 5  # 同时给两个变量赋值
>>> d = b + c
>>> print(a, b, c, d)
10 1 5 6
>>> a = int(1.6)  # 修改a的值,int(1.6)把1.6转换为整型(向下取整)
>>> print(a)
1
>>> type(a)
<class 'int'>

当你把整数字面量赋给一个变量时,变量的类型就为int

合理使用空格,能增加程序的易读性。print(a, b, c, d)d = b + c就比print(a,b,c,d)d=b+c便于人类阅读。在编程时,要注意程序的易读性。这对将来对代码的理解和维护都是有益的。

浮点型 (Float)

浮点型 (Float) 是表示小数的类型,类型名为float。当你把浮点数赋给一个变量时,就创建了一个浮点型对象。

>>> GPA = 3.2
>>> tmp = 28.6
>>> print(GPA, tmp)
3.2 28.6
>>> type(GPA)
<class 'float'>

布尔型 (Bool)

布尔型 (Bool) 是表示真假的类型,类型名为bool,只有两种值TrueFalse

>>> is_prime = True
>>> is_even = False
>>> print(is_prime, is_even)
True False
>>> type(is_prime)
<class 'bool'>

浮点型 (Complex)

Python还支持复数,复数由实部和虚部构成,可以用a + bj或者complex(a, b)表示, 复数的实部a和虚部b都是浮点型。

字符串 (String)

字符串 (String) 是表示文本的数据类型,类型名为str。在Python中,字符串用一对单引号',双引号"或者是三引号''' """括起来。字符串可以用加号+拼接。

>>> name = 'Monkeyhbd'
>>> hello = "Hello, I'm"  # 文本中有单引号就用双引号括起来
>>> print(hello + ' ' + name)  # 打印三个字符串的拼接
Hello, I'm Monkeyhbd

反斜杠\可以转义特殊字符,如果不想让反斜杠发生转义,可以在字符串前面添加一个r,表示自然字符串

>>> print('Mo\nkeyhbd')
Mo
keyhbd
>>> print(r'Mo\nkeyhbd')
Mo\nkeyhbd

在上面的例子中\n表示换行。

字符串可以通过下标索引来访问或切片,字符串的第一个字符的索引(下标)为0。下面的图说明了怎样使用字符串索引

-9  -8  -7  -6  -5  -4  -3  -2  -1  (0)
 +---+---+---+---+---+---+---+---+---+
 | M | o | n | k | e | y | h | b | d |
 +---+---+---+---+---+---+---+---+---+
 0   1   2   3   4   5   6   7   8   9
name = 'Monkeyhbd'

print(name[0])  # 从前往后索引
print(name[3])
print(name[-1])  # 从后往前索引
print(name[3: 6])  # 字符串切片
print(name[: -3])  # 从开始一直到倒数第三个字符的切片
print(name[: 2] + name[3: 6])  # 字符串拼接

运行结果

M
k
d
key
Monkey
Mokey

列表 (List)

列表是包含各种对象的序列,类型名为list。在Python中,列表用一对中括号[]括起来,列表内的对象叫元素,元素和元素间用逗号,分隔。列表中的对象可以为不同类型。列表也可以包含(嵌套)列表。

和字符串类似,列表的第一个元素的索引为0,倒数第一个元素的索引为-1。列表也可以切片、拼接。

box = [100, 'Red', 'Blue', 5]
print(box)
print(box[0])  # 访问
print(box[-2])
print(box[1: -1])  # 切片
print(box + box)  # 拼接

运行结果

[100, 'Red', 'Blue', 5]
100
Blue
['Red', 'Blue']
[100, 'Red', 'Blue', 5, 100, 'Red', 'Blue', 5]

列表是可以更新的,通过索引可以访问或修改元素的值,也可以用append方法向列表尾部追加元素。pop方法可以删除列表最后一个元素(并返回所删除元素的值)。

students = ['monkeyhbd', 'Liclout', 'Dijkstra']
print(students)
students[0] = 'Monkeyhbd'  # 修改元素的值
print(students)
students.append('Linus')  # 追加元素
print(students)
students.pop()  # 删除元素
print(students)

运行结果

['monkeyhbd', 'Liclout', 'Dijkstra']
['Monkeyhbd', 'Liclout', 'Dijkstra']
['Monkeyhbd', 'Liclout', 'Dijkstra', 'Linus']
['Monkeyhbd', 'Liclout', 'Dijkstra']

运算符

算术运算符

运算符描述
+两个数字相加,或者字符串和列表的连接
-两个数字相减
*两个数字相乘,或者字符串和列表的重复
/两个数字相除
%取余(取模),返回除法的余数
**幂运算
//取整,返回除法的商,向下取整
print(1 + 2)
print('Py' + 'thon')  # 字符串拼接
print([1, 2] + [3, 4, 5])  # 列表拼接

print(3 - 5)

print(2 * 4)
print('Emm' * 3)  # 字符串重复
print(['Tom', 18] * 3)  # 列表重复

print(1 / 3)

print(3 ** 2)  # 3 ^ 2
print(2 ** 10)  # 2 ^ 10

print(5 % 3)

print(5 // 3)

运行结果

3
Python
[1, 2, 3, 4, 5]
-2
8
EmmEmmEmm
['Tom', 18, 'Tom', 18, 'Tom', 18]
0.3333333333333333
9
1024
2
1

赋值运算符

运算符描述
=把等号右边的值(或运算结果)赋给等号左边的变量
+=a += 2等价于a = a + 2
-=a -= 2等价于a = a - 2
*=a *= 2等价于a = a * 2
/=a /= 2等价于a = a / 2
%=a %= 2等价于a = a % 2
**=a **= 2等价于a = a ** 2
//=a //= 2等价于a = a // 2
a = 1
print(a)

a += 2
print(a)

a -= 1
print(a)

a *= 2
print(a)

a /= 2
print(a)

word = 'Ha'
word *= 3
print(word)

urls = ['www.baidu.com', 'www.bing.com']
urls += ['gitee.com/monkeyhbd', 'github.com/monkeyhbd']
print(urls)

运行结果

1
3
2
4
2.0
HaHaHa
['www.baidu.com', 'www.bing.com', 'gitee.com/monkeyhbd', 'github.com/monkeyhbd']

比较运算符

比较运算总是返回布尔值TrueFalse

运算符描述
==左右两边是否相等
!=左右两边是否不相等
>左边是否大于右边
>=左边是否大于等于右边
<左边是否小于右边
<=左边是否小于等于右边
print(1 == 2)
print('string' == 'string')

print(1 != 2)

print(1 > 2)
print(1 >= 1)

print(1.98 < 2)
print(1 <= 2)

运行结果

False
True
True
False
True
True
True

由于浮点数在计算机中都是近似储存的,所以不要用==去比较两个浮点数,正确的方法是比较它们的差的绝对值是否小于一个给定的精度。

逻辑运算符

运算符描述
and与运算符,两边都为真时结果为真,否则为假
or或运算符,有一边为真时结果为真,否则为假
not非运算符,not TrueFalsenot FalseTrue
tmp = 17

if tmp > 10 and tmp < 25:  # 可以简写成 10 < tmp < 25
    print('气温合适')

运行结果

气温合适

返回目录

上一章 判断和循环

下一章 函数和命名空间

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值