码迷,mamicode.com
首页 > 编程语言 > 详细

python数据类型详解

时间:2018-03-29 22:32:31      阅读:234      评论:0      收藏:0      [点我收藏+]

标签:冒号   不能   女朋友   index   谢霆锋   个数   shanghai   move   append   

python数据类型:int、string、float、boolean

可变变量:list

不可变变量:string、元组tuple

1.list

list就是列表、array、数组

列表根据下标(0123)取值,下标也叫索引、角标、编号

new_stus =[‘刘德华‘,‘刘嘉玲‘,‘孙俪‘,‘范冰冰‘]

最前面一个元素下标是0,最后一个下标是-1 ,也就是说0是刘德华,-1是范冰冰
print(new_stus[0])
print(new_stus[-1])
增:

append是在列表末尾增加一个元素

citys=[]
citys.append(‘北京‘)

insert可以在指定位置(下标)增加元素,0就是第0个位置

citys.insert(0,‘shanghai‘)

删:

pop删除某一个元素,删除-1就是删除最后一个元素

citys.pop(-1)

remove删除指定元素

citys.remove(‘北京‘)

clear是清空

citys.clear()#清空
print(citys)

del删除指定位置元素

del citys[-1]
print(citys)

修改:通过下标修改

citys[0]=‘南京‘#修改的时候,如果指定的下标不存在,会报错

查:

print(citys[0])#指定位置
print(citys.index(‘bj‘))#获取元素的下标,如果找不到那个元素的话会报错
print(citys.count(‘bj‘))#获取元素的数量
print(citys.reverse())#就是把list字符串反转一下,但是什么也没返回
print(citys)

list循环取值:

#list循环
lists1 = [‘刘德华‘,‘范冰冰‘,‘谢霆锋‘,‘王菲‘,‘李冰冰‘,[11,33,6,7]]
for name in lists1:
    if type(name)==list:
        for i in name:
            print(i)
    print(name)


2.字典

字典是key--value形式,字典是无序的

 

字典俩边用in来判断的时候是判断key是否存在

优点:1.取数据方便

        2.速度快

infos = {
    ‘name‘:‘刘德华‘,
    ‘sex‘:‘男‘,
    ‘addr‘:‘香港‘,
    ‘age‘:18
}

查:

get

print(infos.get(‘name‘))
print(infos.get(‘ii‘))#如果ii取不到,就是None
print(infos.get(‘ii‘,110))#如果ii取不到,把值指定为110
中括号[]
print(infos[‘name‘])
print(infos[‘ee‘])

增:

infos[‘phone‘]=1242132556 #增加一个key
infos.setdefault(‘女朋友‘,‘嘿嘿嘿‘)# key value
infos.setdefault(‘name‘,‘谢霆锋‘)# 如果key存在的话,不能修改值

修改:

infos[‘name‘]=‘谢霆锋‘ #如果key存在的话,可以修改值

删除:

pop删除指定key

infos.pop(‘name‘)#指定key删除

popitem随机删除

infos.popitem() #随机删除一个key

del删除指定key

del infos[‘phone‘]#指定key来删除

clear清空字典

infos.clear() #清空字典

方法:

获取字典的key/value

print(infos.values()) #获取到字典所有的value
print(infos.keys())#获取到字典所有的key
print(infos.items())#获取到字典多有k-v

3.元组

如果元组里面只有一个元素的话,那么你必须在元素后边加逗号
t=(1,2,‘e‘,‘a‘)

打印类型

print(type(t))

找元素下标

print(t.index(2)) #找到元素的下标

找元素的个数

print(t.count(2))#找到元素的个数

4.切片

切片是list取值的一种法式,同样适用于字符串,位置之间用冒号连接

print(nums[1:3]) #切片定义:想从list里取多个值  顾头不顾尾  1表示从位置1开始出
print(nums[1:])#如果从某个下标开始去,取到末尾结束,那么末尾可以不写
print(nums[:2])#如果从头开始去,取到后面某个下标结束,那么开头可以不写
print(nums[:])#取到所有

lis强制转换成list

# lis = list(range(1,21))
print(lis)
print(lis[:11])
print(lis[:11:2])#2是步长  表示隔几个取一次  默认不写的话隔一个取一次 如果步长是正数 从左到右取值
print(lis[:11:-1])#步长是-1 如果步长是负数 从右到左边取值


list反转

lis.reverse() #反转,会改变list的值
new_list = lis[::-1]
print(lis[::-1])#反转,产生了一个新的list,不会改变原来的值




python数据类型详解

标签:冒号   不能   女朋友   index   谢霆锋   个数   shanghai   move   append   

原文地址:https://www.cnblogs.com/weilemeizi/p/8672494.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!