Python学习之路_day6

时间:2022-12-31 12:43:39

一:列表类型

用途:用于记录多个值(同种属性)

定义方式:在[]内用逗号分隔开多个任意类型的值

优先掌握的操作:

  1.按照索引取值(正向存取+反向存取):即可以存也可以取

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

  3.长度

  4.成员运算in和not in

  5.追加&插入

    append:追加在最后(L.append(2222))

    insert;插入列表(L.insert(0,1111))

  6.删除

    remove:根据元素名去删

    del:删除(del l[0])根据索引删

    res=l.pop()默认删除第一个,有返回值,是删掉的值

  7.循环

    l=['a','b.,'c','d']

    for item in l:

      pritn(item)

需要掌握的操作:

  reverse:反转,将列表反转过来

  sort:比较大小,将默认从小到大排列,如果要从小到大排列,只要reverse+True

Python学习之路_day6Python学习之路_day6
l=[10,5,6,4]
l.sort(reverse=True)
print(l)

l=[10,5,6,4]
items=[1,2,3]
l.extend(items)
print(l)

l=[10,5,6,4]
print(l.count(10))
View Code

练习题:

Python学习之路_day6Python学习之路_day6
# 1.队列:先进先出
l=[]
l.append('first')
l.append('second')
l.append('third')
print(l)
print(l.pop(0))
print(l.pop(0))
print(l.pop(0))

# 2.堆栈:先进后出
#
l=[]
l.append('1')
l.append('2')
l.append('3')
print(l)
print(l.pop(-1))
print(l.pop(-1))
print(l.pop(-1))
View Code

二:元祖类型tuple

1.用途:就是一个不可变的列表

定义方式:在()内用逗号分隔开多个任意类型的元素:

t=(1,2.2,'aa',('b',c),['ff','g'])

print(type(t))

强调:如果元祖中只有一个值的话,要在后面加上一个','不然表示的是包含的关系

  l=['a']

  print(type(1),1[0])

2.类型转换:

  t1=tuple('hello')

  t2=tuple([1,2,3])
  print(t1)
  print(t2)

3.常用操作+内置方法

优先掌握的操作:

  t=(1,2.2,'a',('b','c'))

3.1:按照索引取值(正向取+反向取):只能取

3.2切片(顾头不顾尾)

3.3长度

3.4成员运算in和not in

3.5循环

需要掌握的操作:

t=('a','b','c','e','a','f')
print(t.index('a',1,5))
print(t.count('a'))

该类型总结:

  存多个值

  有序

  不可变

三:字典类型dict

1.用途

  用于记录多个值,列表是索引对应值,而字典是key对应值,其中key对value有描述性作用

2定义方式:

  在{}内用逗号分隔开多个元素,每个元素都是key:value的形式,其中key可以是不可变类型,通常是字符串类型,而value可以是任意类型

  类型转换:

d=dict(x=1,y=2,z=3)
print(d)

items=[('name','egon'),('age',18),('gender','male')]
d={}
for item in items:
d[item[0]]=item[1]

d=dict(items)
print(d)

了解
keys=['name','age','gender','height','weight']
d={}
for key in keys:
d[key]=None

d={}.fromkeys(keys,None)
print(d,type(d))

3.常用操作+内置方法

优先掌握的操作:

3.1.按key取值:可存可取

Python学习之路_day6Python学习之路_day6
dic={'name':'egon','age':18}
print(dic['name'])
dic['name']='EGON'
dic['gender']='male'
print(dic)

l=['a','b','c']
l[0]='A'
l[4]='AAA'
View Code

3.2长度len

3.3成员运算in和not in:一字典的key为准的

3.4删除

Python学习之路_day6Python学习之路_day6
dic={'name':'egon','age':18}
del dic['name']
print(dic)

res=dic.pop('name')
print(dic)
print(res)

res=dic.popitem()
print(res)
View Code

3.5键keys(),值values(),键值对items()

  在Python2中与Python3中是有区别的:

Python学习之路_day6Python学习之路_day6
在python2
>>> dic={'name':'egon','age':18}
>>>
>>>
>>> dic.keys()
['age', 'name']
>>>
>>>
>>> dic.values()
[18, 'egon']
>>>
>>>
>>> dic.items()
[('age', 18), ('name', 'egon')]

在python3
>>> dic={'name':'egon','age':18}
>>>
>>> dic.keys()
dict_keys(['name', 'age'])
>>> dic.values()
dict_values(['egon', 18])
>>> dic.items()
dict_items([('name', 'egon'), ('age', 18)])
View Code

3.6循环

Python学习之路_day6Python学习之路_day6
dic={'name':'egon','age':18}
for k in dic:
    print(k)

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

for v in dic.values():
    print(v)
View Code

四:集合

1.用途:

  1,关系运算    2,去重(局限性大)

2.定义方式:在{}内用逗号分隔开多个元素,但是元素的特点是

  2.1集合内的元素必须是不可变类型

  2.2集合内的元素无序

  2.3集合内的元素不能重复

优先掌握:

  | 合集:求所有报名的学生

  & 交集:求同时报名两门课程的学员

  - 差集:求只报名Python课程的学员

  ^ 对称差集:

  ==:相等

  父集子集描述的是一种包含于被包含的关系

  >=父集:

  <=:子集:

需要掌握的:

  存多个值

  无序

  可变

集合去重:

  1.只能针对不可变类型

  2.不能保证原来顺序

一些指令集:

  s1={1,2,3}
  s1.update({3,4,5,6})#更新

  s1.pop()#随机删除
  s1.remove('bb')#没有返回值,不是随机删,删除集合中没有的元素会报错
  s1.discard('bbb')#与remove一样,但是删除没有的元素时不会报错
  s1.add(4)#随机加

  print(s1)