写给自己 python自学(数据类型)

来源:互联网 发布:淘宝陈枝记铁锅有毒 编辑:程序博客网 时间:2024/06/01 09:24

python变量可以直接赋值,不需要事先申明

单引号和双引号相同


数字运算:

>>> 5 + 4 # 加法

9
>>> 4.3 - 2 # 减法
2.3
>>> 3 * 7 # 乘法
21
>>> 2 / 4 # 除法,得到一个浮点数
0.5
>>> 2 // 4 # 除法,得到一个整数
0
>>> 17 % 3 # 取余 
2
>>> 2 ** 5 # 乘方

32


4种数字形式:整形,浮点型,布尔型,复数型(允许如下赋值方式)

>>> a, b, c, d = 20, 5.5, True, 4+3j

>>> print(type(a), type(b), type(c), type(d))

<class 'int'> <class 'float'> <class 'bool'> <class 'complex'>


complex(a,b) 等同于a + bj,a,b均为浮点型


字符串操作:

加号 (+) 是字符串的连接符, 星号 (*) 表示复制当前字符串,紧跟的数字为复制的次数。实例如下:
#!/usr/bin/python3

str = 'Runoob'

print (str) # 输出字符串
print (str[0:-1]) # 输出第一个个到倒数第二个的所有字符
print (str[0]) # 输出字符串第一个字符
print (str[2:5]) # 输出从第三个开始到第五个的字符
print (str[2:]) # 输出从第三个开始的后的所有字符
print (str * 2) # 输出字符串两次
print (str + "TEST") # 连接字符串

输出:

Runoob
Runoo
R
noo
noob
RunoobRunoob
RunoobTEST


另外:

>>> print('Ru\noob')Ruoob>>> print(r'Ru\noob')Ru\noob
Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始。字符串类似于数组,可以用str[0],str[-2]等来表示,但不能赋值改变


关于列表(list)


列表是python中很重要的数据类型,用法结构类似c中的数组,用中括号定义,相关操作实例如下:

list = [ 'abcd', 786 , 2.23, 'runoob', 70.2 ]tinylist = [123, 'runoob']print (list)            # 输出完整列表print (list[0])         # 输出列表第一个元素print (list[1:3])       # 从第二个开始输出到第三个元素print (list[2:])        # 输出从第三个元素开始的所有元素print (tinylist * 2)    # 输出两次列表print (list + tinylist) # 连接列表
输出:

['abcd', 786, 2.23, 'runoob', 70.2]abcd[786, 2.23][2.23, 'runoob', 70.2][123, 'runoob', 123, 'runoob']['abcd', 786, 2.23, 'runoob', 70.2, 123, 'runoob']
列表检索下表支持类似matlab方式的表示方法(2:5)


元组相关tuple


元组用小括号定义,同样类似数组,但不能修改


集合set


概念同数学上的集合概念,用大括号或者set()定义,若要创建空集,则必须使用后者

student = {'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'}print(student)   # 输出集合,重复的元素被自动去掉# 成员测试if('Rose' in student) :    print('Rose 在集合中')else :print('Rose 不在集合中')# set可以进行集合运算a = set('abracadabra')b = set('alacazam')print(a)print(a - b)     # a和b的差集print(a | b)     # a和b的并集print(a & b)     # a和b的交集print(a ^ b)     # a和b中不同时存在的元素
输出:

{'Jack', 'Rose', 'Mary', 'Jim', 'Tom'}Rose 在集合中{'r', 'b', 'a', 'c', 'd'}{'r', 'b', 'd'}{'a', 'l', 'z', 'b', 'm', 'd', 'r', 'c'}{'a', 'c'}{'l', 'z', 'b', 'm', 'd', 'r'}

字典dictionary


字典与列表相似,但字典是无序存储,是一个的组合,键在一个字典中唯一

建立键和值的对应关系

dict = {}dict['one'] = "1 - 菜鸟教程"dict[2]     = "2 - 菜鸟工具"tinydict = {'name': 'runoob','code':1, 'site': 'www.runoob.com'}print (dict['one'])       # 输出键为 'one' 的值print (dict[2])           # 输出键为 2 的值print (tinydict)          # 输出完整的字典print (tinydict.keys())   # 输出所有键print (tinydict.values()) # 输出所有值
输出:

1 - 菜鸟教程2 - 菜鸟工具{'name': 'runoob', 'site': 'www.runoob.com', 'code': 1}dict_keys(['name', 'site', 'code'])dict_values(['runoob', 'www.runoob.com', 1])
另有构造函数dict()可快速创建字典,几种创建操作如下:

>>> dict([('Runoob', 1), ('Google', 2), ('Taobao', 3)]){'Taobao': 3, 'Runoob': 1, 'Google': 2}>>> {x: x**2 for x in (2, 4, 6)}{2: 4, 4: 16, 6: 36}>>> dict(Runoob=1, Google=2, Taobao=3){'Taobao': 3, 'Runoob': 1, 'Google': 2}

在数据类型转换时,可以将数据类型作为函数名作用于目标数据即可。


与C语言相比,基本概念相近,但又许多自带的方便操作的运算符,能够快速处理更多的情况。


0 0
原创粉丝点击