基本数据类型

基本数据类型

一、列表

  1、作用:按照索引位置存放多个值

  2、定义:l = [ ]

  3、类型转换:但凡能够被for循环遍历的类型都可以当做参数传给list()转成列表

    比如:字符串,字典等。

  4、内置方法:

    1.按照索引取值,可正可反:可以取也可以改

l=[111,'egon','hello']
# 正向取
print(l[0])
# 反向取
print(l[-1])
# 可以取也可以改:索引存在则修改对应的值
l[0]=222
print(l)
# 无论是取值操作还是赋值操作:索引不存在则报错
l[3]=333

 

     2、切片(顾头不顾尾,步长)

l = [111, 'egon', 'hello', 'a', 'b', 'c', 'd', [1, 2, 3]]
print(l[0:3])
print(l[0:5:2])  # 可指定步长

print(l[0:len(l)])
print(l[:])
new_l=l[:] # 切片等同于拷贝行为,而且相当于浅copy

print(l[::-1])   # 将列表倒过来

     3、长度 len() :获取列表长度

     4、成员运算符 in 和 not in  :判断元素是否在列表中

     5、添加值

# 5.1 追加
l=[111,'egon','hello']
l.append(3333)
print(l)


# 5.2、插入值
l=[111,'egon','hello']
l.insert(0,'alex')  # 在对应位置前插入
print(l)


# 5.3、extend添加值
new_l=[1,2,3]
l=[111,'egon','hello']
l.extend(new_l)
print(l)

     6、删除值

# 方式一:通用的删除方法,只是单纯的删除、没有返回值
l = [111, 'egon', 'hello']
del l[1]
x =del l[1] # 抛出异常,不支持赋值语法
print(l)

# 方式二:l.pop()根据索引删除,会返回删除的值
l = [111, 'egon', 'hello']
l.pop() # 不指定索引默认删除最后一个
l.pop(2)  #指定位置
print(l)

# 方式三:l.remove()根据元素删除,返回None
l = [111, 'egon', [1,2,3],'hello']
l.remove([1,2,3])
print(l)
res=l.remove('egon')
print(res) # None

      7、循环

l=[1,'aaa','bbb']
for x in l:
    l.pop(1)
    print(x)

    8、其他方法

1、l.count()    #  统计个数
2、l.index()    #  获取元素索引位置,没有则报错
3、l.clear()     #  清空列表
4、l.reverse() #  不是排序,就是将列表倒过来
5、l.sort()      # 列表内元素必须是同种类型才可以排序
     l.sort()     #  默认从小到大排,称之为升序
     l.sort(reverse=True)  # 从大到小排,设置为降序

二 、元组

  1、作用:按照索引位置存放多个值,只能读不能改

  2、定义:t = ( )  括号内用,分开

   3、类型转换:可以是 字符串,列表,字典

   4、内置方法:

    1、按照索引取值,可反取可正取,但是只能取

t=('aa','bbb','cc')
print(t[0])
print(t[-1])

 

     2、切片(顾头不顾尾,步长)

t=('aa','bbb','cc','dd','eee')
print(t[0:3])
print(t[::-1])

 

     3、长度 len() :获取列表长度

 

 

 

     4、成员运算符 in 和 not in  :判断元素是否在元组中

 

     5、循环

for x in t:
    print(x)

三 、字典

  1、作用:按照键存放值,取的时候按对应key来取

  2、定义:{ }内用,分开key:value,key必须是不可变类型,value

       可以是任意类型。

    造字典的方式:

方式一:
d = {}   #空字典
方式二:
d=dict(x=1,y=2,z=3)
方式三:
info=[
    ['name','egon'],
    ('age',18),
    ['gender','male']
]
res=dict(info)  # 一行代码搞定上述for循环的工作

方式四:
keys=['name','age','gender']
d={}
for k in keys:
    d[k]=None
print(d)
d={}.fromkeys(keys,None) # 一行代码搞定上述for循环的工作
print(d)

 

    3、内置方法:

    1、按key取值,可存可取

d={'k1':111}
# 针对赋值操作:key存在,则修改
d['k1']=222
# 针对赋值操作:key不存在,则创建新值
d['k2']=3333
print(d)

      2、长度 len():获取key的数量

 

      3、成员运算 in 和 not in  :判断key 是否存在于字典

 

      4、删除

d={'k1':111,'k2':2222}
# 4.1 通用删除 del
del d['k1']
print(d)

# 4.2 pop删除:根据key删除元素,返回删除key对应的那个value值
res=d.pop('k2')
print(d)
print(res)

# 4.3 popitem删除:随机删除,返回元组(删除的key,删除的value)
res=d.popitem()
print(d)
print(res)

 

      5、键keys(),值values(),键值对items()

for k in d.keys():
    print(k)

for v in d.values():
    print(v)

for k,v in d.items():
    print(k,v)

      6、其他方法

1、d.clear()                # 清空字典

2、d.update()              # 更新字典

3、d.get()                  # key不存在不报错,返回None

4、d.setdefault()
     #   如果key有则不添加,返回字典中key对应的值
     #  如果key没有则添加,返回字典中key对应的值                       

 

posted @ 2020-03-11 17:08  三根烦恼丝啊  阅读(146)  评论(0编辑  收藏  举报