Python 随笔第5小节


 

'''
列表

可变序列 可重复 有序 【】
'''
import operator

#创建列表的第一方式
lst=['hello','word,',98]
print(lst)
print(lst[0],lst[-3]) #顺着进行是0 1 2 3 4 5 6 7逆着数是-1 -2 -3 -4


#创建列表的第二种方式

lst=list(['hello','wwww',96])

print(lst)

print(lst.index('wwww'))#查找第一个索引这个和数的第一个索引是lst.index('  没有的额话就会报错

print(lst.index('hello',0,4))  #在定义的范围内进行查找  索引已范围已经定好

#修改一个值
lst=[10,20,30,40]
lst[2]=100
print(lst)


#修改多个值
lst[1:4]=[200,300,400,500,600]
print(lst)


#默认从小到大
lst=[10,98,50,232,2652,51]
print('排序前:',lst)
print('----------通过制定关键字进行排序--------')#直接操作就会在刚刚的进行边
lst.sort()
print(lst)

#进行翻转就变成了从大到小
lst.sort(reverse=True)
print(lst)
print('------使用内置函进行排序----')
lst2=sorted(lst,reverse=True) #内置函数会返回一个lst新的
print(lst)
#元素的添加只加一个 append
lst=[10,20,30]
print(lst,id(lst))
lst.append(100)
print(lst,id(lst))


#进行多个元素的添加 extende


lst2=['hello','word']
lst.extend(lst2)

print(lst)


#在列表中的任意一个元素添加一个元素

#指定位置进行插入

lst.insert(1,90)

print(lst)

print('-------------在任意一个位置进行插入多个--------')

lst3=[True,False,'Hello']
lst[1:]=lst3 #后边的进行切掉并进行覆盖

print(lst)

#进行移除
lst=[10,20,30,40,50,60]
lst.remove(30)
print(lst)

#根据索引移除元素

lst.pop(1)

#指定索引为可以进行弹出
print(lst)
lst.pop()

#不指定索引就是进行弹出最后一个
print(lst)


lst=[10,20,30,540,232,3232]
#切片操作就是进行将其分割开来 1:3
lst2=lst[1:3]

#找出其索引为1-2的
print(lst2)

#清空
lst[1:3]=[]

lst.clear()

del lst


lst1=[ i for i in range(10)]

print(lst1)

lst2 =[ i*i for i in range(10)]
print(lst2)

print(lst2[-1])


num=[10,20,30,40,6,2,5,2]
print(num[0:-2])

del lst2[2]

print(lst2)
print(len(lst2))
for i in lst2:
    print(i,end='\t')

print(1 in lst2)

#进行拼接
lst2+=[5,6,6,5,5,6,6,5]
print(lst2)

print(max(lst2))

lst3=[2,5,6,6]

lst4=[lst2,lst3]

print(lst4[0][1])
print(operator.eq(lst4,lst3))

print(lst2.count(1))

lst2.pop()

  

'''
元组
不可变序列 可重复 有序
不鞥修改
'''
#第一种建立
tuple1=('F','G','A','A')

print(tuple1)
#第二种建立 直接胜率括号
tuple3="kk","word",98

print(tuple3)
#直接使用内置函数
t3=tuple(('python','word',98))#两个括号
print(t3)

#有一个的数字的经常用,隔开

lst=[1,]
print()


#建立空的
lst=[]
lst=list()

t4=()
t4=tuple()

d={}
d1=dict()


'''
元组的遍历
'''
#直接利用索引进行输出
tupl=(1,2,3,4,5,6,7,8,8,)

print(tupl[1],tupl[2],tupl[3])

for item in tupl:
    print(tupl[item])
'''
可变序列就是(列表 字典 集合) 可以对对其增删操作 对象地质不发生改变
不可变序列(字符串 ,元组)  美欧增删操作
'''

print(tupl[1:5])
tupl2=(5,6,6,9)
tupl2+=tupl

#进行合并
print(tupl)
del tupl
tu=('Hi',)*4
print(tu,type(tu))

  

'''
字典 可变序列
key 可重复 value不可重复 无序 {key:Value}
'''
#第一种使用{进行创建
sc={'张三':100,'李四':98,'王无':45}

print(sc,type(sc))

#第二种使用dict进行创建
#直接用等于号 相当于转过去了
student=dict(name='sds',age=20)

print(student)
#获取数值
print(sc['张三'])
#没有就会报错


print(sc.get('张三'))
print(sc.get('kk','ss'))#这个没有就会进 进行提示None默认 可以进行修改
print(sc.get('李四'))

item1=['fr','book','other1']
price1=[15,5454,5454]

#直接进行打包操作
i={item:price for item ,price in zip(item1,price1)}
print(i)


kk={i:j for i,j in zip(item1,price1)}

'''
.upper该大写
.title()首字母大写
.lower()小写
'''


#进行遍历操作
for i in sc:
    print(i,sc.get(i))

#字典视图

keys=sc.keys()
#获取所有的keys
print(list(keys))
print(tuple(keys))
print(keys)

#过去所有value

ve=sc.values()
print(ve)
print(type(ve))
print(list(ve))
print(tuple(ve))


#获取所有的key-Value
#湖区全部用item
item=sc.items()

print(item)
print(list(item))

print(len(sc))
sc['张三']=97
#进行修改
print(sc)

#sc.clear()#清空字典
#del sc 删除字典

sc1=sc.copy()


#进行谈价字典元素
# sc.setdefault()
print(sc)

sc.update(sc1)
print()

sc.update(sc1)



print(sc)

sc.pop('张三')#将里边这个元素进行删除

sc.popitem()#返回最后一个并删除

  

'''
集合的创建
可变序列,不可重复,无序 {
集合就是没有value的字典
第一种使用{}
'''

s={1,2,3,4,5,6,6+6}
print(s,type(s)),


'''
使用内置函数创建
'''
s2=set(range(1,10))

s4=set(('python'))

#集合中的元素
print(s4,type(s4))

s5=set({1,2,3,4,5,6})
print(s5,type(s5))
s6=set()
print(s6,type(s6))



'''
集合之间的关系
'''
#两个集合是否相等
k1={10,20,30,40}
k2={10,20,30,40}
print(k1==k2)


#集合是否是另一个集合的子集
s1={10,20,30,40,50,60,70,80}
s2={10,20,30}
s3={100,200,300}
print(s2.issubset(s1))

print(s3.issubset(s2))

'''

一个集合是否是另一个集合的超集
'''

print(s1.issuperset(s2))

print(s3.issubset(s1))


'''
判断是否相交

#不想交返回True
'''
print(s2.isdisjoint(s1))
print(s2.isdisjoint(s3))#不想交返回True


lst={i for i in range(10)}
print(lst,type(lst))

lst2={i for i in range(10) if i%2==0}
print(lst2)


'''
集合的相关操作
'''
#进行增加操作 add增加一个  update增加多个可以增加元组里边的数 也可以增加列表里边的数 直接提取出来增加
s={10,20,405,30,60}
s.add(80)
print(s)

s.update({80,56,58})
print(s)
s.update((577,89,5,55))
print(s)
s.update([899,8,9,9,8,8,8,8,8])
print(s)
#删除操作
# s.remove()
#没有直接抛出异常
print(s)
s.discard(100)

#没有不会抛异常 discard
print(s)

s.pop()#pop进行删除任意一个元素
print(s)

s.clear()
print(s)
del s

s1={10,20,30,40}
s2={20,30,40,50,60}
print(s1.intersection(s2))
print(s1&s2)
#交集intersection &



#并集 s2|s1 或者union
print(s2.union(s1))
print(s2|s1)
#s1中特有的
print(s1-s2)

print(s1^s2) #两个特有的

  

posted @ 2024-01-17 21:28  记录菜鸟成长  阅读(64)  评论(0)    收藏  举报