python3的标准数据类型

不怕自己没能耐,就怕自己以为有能耐。

上一篇:python简介、特点、解释器种类

下一篇:pip工具安装库

python3的标准数据类型简介

Number(数字)、String(字符串)、List(列表)、Tuple(元组)、Set(集合)、Dictionary(字典)

不可变数据类型(3 个):Number(数字)、String(字符串)、Tuple(元组)

可变数据类型(3 个):List(列表)、Dictionary(字典)、Set(集合)

Number(int、float、complex)

1、数字类型转换

int(x) 将x转换为一个整数。

float(x) 将x转换到一个浮点数。

complex(x) 将x转换到一个复数,实数部分为 x,虚数部分为 0。

complex(x, y) 将 x 和 y 转换到一个复数,实数部分为 x,虚数部分为 y。x 和 y 是数字表达式

2、数字运算

加法:print(1.1+1.1)    print(1+1)

减法:print(1-1)    print(1-10)

乘法:print(2*3)    print(2.5*2)

除法(/,//,%):

整数除法返回浮点型    print(6 / 2)    # 3.0

整数除法返回向下取整后的结果    print(16 // 3)    # 5    (得到的值不一定是整数,取决于分子分母的数值类型)

返回除法的余数    print(16 % 3)    # 1

等号:用于给变量赋值

a = 1

b = 2

print(a + b)    print(a - b)    print(a * b)    print(a / b)

幂运算:print(2 ** 3)    # 2的3次方

3、随机数函数

随机数可以用于数学,游戏,安全等领域中,还经常被嵌入到算法中,用以提高算法效率,并提高程序的安全性。

Python常用随机数函数:

choice(seq):从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数。

randrange([start],step[stop]):从指定范围内,按指定基数递增的集合中获取一个随机数,基数默认值为 1

random():随机生成下一个实数,它在[0,1)范围内。

seed([x]):改变随机数生成器的种子seed。

shuffle():将序列的所有元素随机排序

uniform(x, y):随机生成下一个实数,它在[x,y]范围内。

String(字符串)

字符串常用的序列操作:索引、切片、乘法、长度、最大值和最小值、成员资格检查

索引:序列中的元素都是有编号的---从0开始递增。

str ='python0123'

print(str[0])              # p

切片:

str = 'python0123'   #str[start:stop:step] 遵循【左闭右开】规则

print(str[0:3])    #截取第一位到第三位的字符                      #pyt

print(str[1:5])    #截取第二位到第六位之前的字符                    #ytho

print(str[:])       #截取字符串的全部字符                             #python0123

print(str[6:])      #截取第七个字符到结尾                            #0123

print(str[:-3])    #截取从头开始到倒数第三个字符之前                #python

print(str[2])      #截取第三个字符                                            #t

print(str[-1])      #截取倒数第一个字符                               #3

print(str[::-1])    #创造一个与原字符串顺序相反的字符串             #3210nohtyp

print(str[-3:-1])  #截取倒数第三位与倒数第一位之前的字符          #12

print(str[-3:])      #截取倒数第三位到结尾                              #123

print(str[:-5:-3])  #逆序截取,步长为3                               #30

print(str[9:0:-1])  #逆序截取,起始值为字符串的第10为数,到字符串第1位数之前的数结束  #3210nohty

print(str[0:12])    #截取全部元素

乘法:

str ='python'

print(str*2)       #将重复序列x次来创建一个新序列    # pythonpython

长度、最小值和最大值:

str = 'python0123'

print(len(str)              # 10

print(min(str))            # 0

print(max(str))           # y

成员资格检查:

检查特定的值是否包含在序列中,可使用运算符in

str ='python0123'

print('p' in str)           # True

print('x' in str)           # False

字符串方法:

1、字符串居中(center)

str ='python0123'

print(str.center(10))   # '     python0123     '

2、字符串中查找子串,输出索引(find)

str ='python0123'

print(str.find('0'))       # 6

print(str.find('p'))       # 0

print(str.find('P'))      # -1

print(str.find('k'))       # -1

3、合并序列元素(join),与split作用相反

str1 = 'python'

str2 = '123'

print(str1.join(str2))    # 1python2python3

print(str2.join(str1))    # p123y123t123h123o123n

4、去掉字符串开头和末尾的空白删除,并返回删除后的结果(strip)

str ='  py thon  '

print(str.strip())        # py thon

5、返回字符串的小写(lower)

str = 'PYTHON'

print(str.lower())        # python

List(列表)

1、访问列列表的值

使用下标索引来访问列表中的值,也可以使用中括号[  ]的形式截取字符

list1 = [12,'12','python']

print(list1[0])            # 12

print(list1[0:1])         # [12]

print(list1[0:5])         # [12, '12', 'python']

2、更新列表

list1 = [12,'12','python']

list1[0] = 'ab'

print(list1)                            # ['ab', '12', 'python']

list1 = [12,'12','python']

list1.append('python')            # 该方法是在列表的末尾添加元素

print(list1)                              # [12, '12', 'python', 'python']

空列表

list3 = []

list3.append(123)

print(list3)                              # [123]

3、删除列表元素(del 语句、remove方法)

list1 = [12,'12','python']

del list1[2] 

print(list1)                            # [12, '12']

list1 = [12,'12','python']

list1.remove(12)                  # 移除列表中某个值的第一个匹配项

print(list1)                            # ['12', 'python']     

4、列表脚本操作符

列表元素个数

list1 = [12,'12','python', [1,2,3]]

print(len(list1))                        # 4                   

列表组合

list1 = [12,'12','python']

list2 = [1,2,3]

print(list1+list2)                       # [12, '12', 'python', 1, 2, 3]                

列表重复

list3 = ['1q']

print(list3 * 3)                            # ['1q', '1q', '1q']                   

判断元素是否存在于列表中

list4 = [12,'12','python']

print('12' in list4)                      # True 

迭代

list5 = [12,'12','python']

for li in list5:

    print(li, end=' ')                    # 12 12 python

列表嵌套

list1 = [1]

list2 = [1,1]

list3 = [1,2,1]

list4 = [list1, list2, list3]            # [[1], [1, 1], [1, 2, 1]]

5、列表函数

获取列表元素个数(len(list))

返回列表元素最大值(max(list))

返回列表元素最小值(min(list))

将元组转换为列表(list(seq))seq是元组或字符串

6、列表方法

复制列表(list.copy())

清空列表(list.clear())

将对象插入列表(list.insert(index, obj))

反向列表中元素(list.reverse())

对原列表进行排序(list.sort(reverse=True))降序排列

列表末尾添加新的对象(list.append(obj))

统计某个元素在列表中出现的次数(list.count(obj))

移除列表中某个值的第一个匹配项(list.remove())

从列表中找出某个值第一个匹配项的索引位置(list.index(obj))

移除列表中的一个元素(默认最后一个元素),并且返回该元素的值(list.pop())

在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)(list.extend(seq))

Tuple(元组)

元组与列表相似,但元组的元素不可改变,列表可变

1、访问元组

使用下标索引来访问元组中的值

tup = (12,'12','python')

print(tup[0])                    # 12

print(tup[0:2])                # (12, '12')

2、元组组合

元组中的元素值是不允许修改的,但是可以对元组进行连接组合

tup1 = (12,'12','python')

tup2 = (24,'hi','python')

print(tup1 + tup2)            # (12, '12', 'python', 24, 'hi', 'python')

3、删除元组

元组中的元素值不允许删除的,但是可以使用del语句来删除整个元组

tup1 = (12,'12','python')

del tup1

print(tup1)                    # NameError: name 'tup1' is not defined

4、元组运算符

元组可以组合(+)和复制(*),运算后重新生成一个元组

计算元素个数(len())

tup1 = (12,'12','python')

print(len(tup1))                        # 3               

判断元素是否存在(in)

tup1 = (12,'12','python')

print(12 in tup1)                    # True

print(23 in tup1)                    # False

5、元组函数

返回元组中元素最大值

tup1 = ('12','12','python')

print(max(tup1))                # python

返回元组中元素最小值

tup1 = ('12','12','python')

print(min(tup1))                # 12

列表转换为元组

list1 = [12,'12','python']

tup1 =tuple(list1)

print(tup1)                           # (12, '12', 'python')

Dictionary(字典)

字典是一种可变容器模型,可存储任意类型对象,格式{key1:value1,key2:value2},key是唯一的

1、访问字典里的值

dict1 = {'Name':'rookie','Age':10,'Country':'China'}

print(dict1['Name'])                    # rookie

print(dict1['age'])                        # KeyError: 'age'

2、修改字典

增加新的键/值对,修改或删除已有键/值对

dict1 = {'Name':'rookie','Age':10,'Country':'China'}

dict1['Age'] =12        # 修改键'Age'

print(dict1)                # {'Name': 'rookie', 'Age': 12, 'Country': 'China'}

dict1 = {'Name':'rookie','Age':10,'Country':'China'}

dict1['City'] ='beijing'    # 增加键'City'

print(dict1)                # {'Name': 'rookie', 'Age': 10, 'Country': 'China', 'City': 'beijing'}

dict1 = {'Name':'rookie','Age':10,'Country':'China'}

del dict1['Name']        # 删除键 'Name'

print(dict1)                # {'Age': 10, 'Country': 'China'}

dict1 = {'Name':'rookie','Age':10,'Country':'China'}

dict1.clear()              # 清空字典

print(dict1)                # {}

dict1 = {'Name':'rookie','Age':10,'Country':'China'}

del dict1                    # 删除字典

print(dict1)                # NameError: name 'dict1' is not defined

3、字典的特性

字典值可以是任何的 python 对象,可以是标准的对象,也可以是用户定义的,但键不行

同一个键被赋值两次,只有后一个值会被记住

dict1 = {'Name':'rookie','Age':10,'Name':'China'}

print(dict1)                # {'Name': 'China', 'Age': 10}

键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行

dict1 = {1 :'rookie',('Age',):10,'Name':'China'}

print(dict1)                # {1: 'rookie', ('Age',): 10, 'Name': 'China'}

dict1 = {1 :'rookie',['Age',]:10,'Name':'China'}

print(dict1)                 # TypeError: unhashable type: 'list'

4、内置函数

计算字典元素个数,即键的总数(len(dict))

输出字典,以可打印的字符串表示(str(dict))

返回输入的变量类型(type(variable))

Set(集合)

集合(set)是一个无序的不重复元素序列。可以使用大括号 { } 或者 set() 函数创建集合,创建一个空集合必须用 set()

1、添加元素

set1 =set(('rookie','20','China'))

set1.add('12')

print(set1)                # {'China', '12', '20', 'rookie'}

set1 =set(('rookie','20','China'))

set1.update({20,90})    # 参数可以是列表,元组,字典等

print(set1)                # {'China', '20', 20, 90, 'rookie'}

2、移除元素

set1 =set(('rookie','20','China'))

set1.remove('20')        # 元素不存在会报错

print(set1)                # {'China', 'rookie'}

set1 =set(('rookie','20','China'))

set1.discard(20)    # 元素不存在不会报错

print(set1)              #  {'China', 'rookie', '20'}

set1 =set(('rookie','20','China'))

set2 = set1.pop()

print(set2)                        # 随机删除集合中的一个元素

3、集合的其他方法

计算集合的元素个数(len(set))

清空集合(set.clear())

判断元素是否存在集合中(a in set)



如果感觉本文对您有帮助可以点个赞哦

本文为学习笔记,转载请标明出处

本文仅供交流学习,请勿用于非法途径

本文仅是个人意见,如有想法,欢迎留言

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,117评论 4 360
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,963评论 1 290
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 107,897评论 0 240
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,805评论 0 203
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,208评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,535评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,797评论 2 311
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,493评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,215评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,477评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,988评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,325评论 2 252
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,971评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,055评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,807评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,544评论 2 271
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,455评论 2 266

推荐阅读更多精彩内容