#输出质数 并求和
while
a=[1,2,3,7,8,9]
i=0
h=0
while i<len(a):
if a[i]%2==1:
h+=a[i]
print(a[i])
i+=1
print(h)
用for实现输出质数 并求和
a=[1,2,3,7,8,9]
h=0
for i in a:
if i%2==1:
h+=i
print(i)
i+=1
print(h)
#输出数字 并整形
#while
a='abc12d345'
i=0
b=0
while i<len(a):
if '0'<=a[i]<='9':
print(a[i])
b*=10
b=b+int(a[i])
i+=1
print(b)
#for
a='abc12d345'
b=0
for i in a:
if '0' <= i <= '9':
print(i)
b *= 10
b = b + int(i)
print(b)
#元组
a=(1,2,3)
print(type(a))
for x in a:#访问元组
print(x)
#while 访问元组
a=(1,2,3,4,5,6)
i=0
while i<len(a):
print('第{}个元素是{}'.format(i+1,a[i]))
i+=1
#元组的切片
a=(1,2,3,4,5,6)
print(a[::2])
print(a[5:0:-1])#下标0取不到
#元组的区分,当有一个元素时,必须加一个,才是元组
a=(1)
print(type(a))#类型 :整形
b=(1,)
print(type(b))#类型: 元组
#元组需要匹配=前后数量相等
a,b,c=(1,2,3)
print(a)
print(b)
print(c)
#元组不可修改 ,列表可以修改
c=(1,2,3)
b=[4,5]
b.extend(c)
print(b)
#将c里面的元素插入b里面
c=(1,2,3)
b=[4,5,6]
i=0
for y in c:
b.insert(i,y)
i+=2
print(b)
#双重列表的输出,用while,与for 实现
#【while while】
a=[[1,2,3],[4,5],['q','w'],['_','@']]
i=0
while i<len(a):
j=0
print(a[i],type(a[i]))#输出第一重列表元素
while j<len(a[i]):
print(a[i][j],end=' ')#输出第二重列表元素
j+=1
print()
i+=1
#【while for】
a=[[1,2,3],[4,5],['q','w'],['_','@']]
i=0
while i<len(a):
for j in a[i]:
print(j,end=' ')
print()
i+=1
#【for while】
a=[[1,2,3],[4,5],['q','w'],['_','@']]
for i in a:
j=0
while j<len(i):
print(i[j],end=' ')
j+=1
print()
#【for for】
a=[[1,2,3],[4,5],['q','w'],['_','@']]
for i in a:#i代表元素
for j in i:
print(j,end=' ')
print()
#【for for (range)】
a=[[1,2,3,4,5,6],[4,5],['q','w'],['_','@']]
for i in range(len(a)):#i代表下标
for j in range(len(a[i])):
print(a[i][j],end=' ')
print()
#字典
a={'name':'张三','age':20,'address':'河南'}
print(a)
print(a['name'])
print(a['age'])
print(a['address'])
#字典是可以进行修改的
a={'name':'张三','age':20,'address':'河南'}
a['age']=23#在已有键上修改
print(a)
a['sex']='男'#增加没有的
print(a)
del a['name']#删除
print(a)
a.pop('age')#删除
print(a)
#字典的另一种输出
b=dict(name='李四',age=20,address='北京')
print(b)
print(b.get('sex'))#没有输出none
print(b.get('sex','男'))#如果字典里没有就将输入的键值作为默认值
print(b.get('name','王五'))#如果字典里有,就输出初始值。
#keys【输出字典里的所有键】
b=dict(name='李四',age=20,address='北京')
print(b.keys())#keys表示输出所有的键,
print(b.values())
for q in b.keys():#将键分别输出
print(q, b[q])
#将字典里的项 分别输出
b=dict(name='李四',age=20,address='北京')
print(b.items())
for k,v in b.items():
print(k,v)
#清除所有元素
b=dict(name='李四',age=20,address='北京')
b.clear()
print(b)
#删除并且返回键值
b=dict(name='李四',age=20,address='北京')
print(b.pop('name'))
print(b)
#删除最后一个
b=dict(name='李四',age=20,address='北京')
print(b.popitem())
print(b)
#字符串的乘 加
a='你好 '*4
print(a)
b='你好,'+'北京'
print(b)
#拓展练习 双重字典的输出
a={
'001':{'name':'张三','age':18,'address':'北京'},
'002':{'name':'李四','age':12,'address':'河北'},
'003':{'name':'王五','age':28,'address':'河南'}
}
for k in a.keys():#.keys 输出字典里的键
print(k,end=' ')
for q in a[k].keys():
print(q,a[k][q],end=' ')
print()
print()
for k,v in a.items():#.items 将键与键值都输出。
print(k,end=' ')
for s,d in v.items():
print(s,d,end=' ')
print()
#拓展练习 字典里有北京的 加入房补=10000
a={
'001':{'name':'张三','age':18,'address':'北京'},
'002':{'name':'李四','age':12,'address':'河北'},
'003':{'name':'王五','age':28,'address':'河南'}
}
for k,v in a.items():
if v['address']=='北京':
v['房补']=10000
print(a)
for k in a.keys():
if a[k]['address'] == '北京':
a[k]['房补'] = 10000
print(a)