测试题目

1、数字、字符串、列表、元祖、字典对应的布尔值的False分别是什么?

int=0
str=''
list=[]
tu=()
dic={}
print(bool(int),bool(str),bool(list),bool(tu),bool(dic))
View Code

2、有列表li=[1,3,2,'a',4,'b',5,'c']

#1)通过切片形成新的列表l3,l3=[1,2,4,5]
#2)通过切片形成新的列表l4,l4=[3,'a','b']
#3)通过切片形成新的列表l5,l5=['c']
#4)通过切片形成新的列表l6,l6=['b','a',3]

li=[1,3,2,'a',4,'b',5,'c']
print(li[0::2])
print(li[1:-2:2])
print(li[-1:-2:-1])
print(li[-3::-2])
View Code

3、有列表lis=['k',['qwe',20,{'k1':['tt',3,'1']},89],'ab']]

#1)将列表lis中的'tt'变大写(两种方法)
lis=[['k',['qwe',20,{'k1':['tt',3,'1']},89],'ab']]
lis[0][1][2]['k1']=['TT',3,'1']
print(lis)
lis[0][1][2]['k1'][0]=lis[0][1][2]['k1'][0].upper()
print(lis)

#2)将列表中数字3变成字符串'100'(两种方法)
lis=[['k',['qwe',20,{'k1':['tt',3,'1']},89],'ab']]
lis[0][1][2]['k1']=['tt','100','1']
print(lis)
lis[0][1][2]['k1'][1]='100'
print(lis)

#3)将列表中字符串'1'变成数字101(两种方法)
lis[0][1][2]['k1']=['tt',3,101]
print(lis)
lis[0][1][2]['k1'][2]=101
print(lis)
View Code

4、有字典dic={'k1':'v1','k2':['alex','sb'],(1,2,3,4,5):{'k3':['2',100,'wer']}}

#1)将'k2'对应值的第一个位置插入一个元素'23'
dic={'k1':'v1','k2':['alex','sb'],(1,2,3,4,5):{'k3':['2',100,'wer']}}
dic['k2'].insert(0,'23')
print(dic)

#2)将'k2'对应值的第一个位置插入一个元素'a'
dic={'k1':'v1','k2':['alex','sb'],(1,2,3,4,5):{'k3':['2',100,'wer']}}
dic['k2'].insert(0,'a')
print(dic)

#3)将(1,2,3,4,5)对应值添加一个键值对'k4':'v4'
dic={'k1':'v1','k2':['alex','sb'],(1,2,3,4,5):{'k3':['2',100,'wer']}}
dic[(1,2,3,4,5)].setdefault('k4','v4')
print(dic)

#4)将(1,2,3,4,5)对应值的值添加一个键值对(1,2,3):'ok'
dic={'k1':'v1','k2':['alex','sb'],(1,2,3,4,5):{'k3':['2',100,'wer']}}
dic[(1,2,3,4,5)].setdefault('(1,2,3)','ok')
print(dic)

#5)将'k3'对应的值的“wer'更改为'qq'
dic={'k1':'v1','k2':['alex','sb'],(1,2,3,4,5):{'k3':['2',100,'wer']}}
dic[(1,2,3,4,5)]['k3'][2]='qq'
print(dic)
View Code

5、字符串操作方法

#1)将列表li=['alex','wusir','rain']通过操作列表构造字符串s='alexwusirrain'
li=['alex','wusir','rain']
s=''.join(li)
print(s,type(s))

#2)将列表li=['alex','wusir','rain']通过操作列表构造字符串s='alex*wusir*rain'
li=['alex','wusir','rain']
s='*'.join(li)
print(s)

#3)字符串s='alexwusirlex'通过操作字符串构造一个列表li=['a','exwusirlex']
s='alexwusirlex'
print(s.split('l',1))

#4)字符串s='alex wusir'通过操作字符串构造一个列表li=['alex','wusir']
s='alex wusir'
print(s.split())

#5)字符串s='alex'通过操作字符串构造字符串s1='a_l_e_x'
s='alex'
s1='_'.join(s)
print(s1)
View Code

6、分别用while循环和for循环打印1-2+3-4+5...+99的结果

x=1
sum=0
while x<100:
    if x%2==0:
        sum-=x
    else:
        sum+=x
    x+=1
print(sum)
while循环
sum=0
for i in range(1,100):
    if i%2==0:
        sum-=i
    else:
        sum+=i
print(sum)
for循环

7、使用range打印100,99,98....0

for i in range(100,-1,-1):
    print(i)

8、计算用户输入的内容中索引为奇数并且对应元素为数字的个数

func=input('请输入数字>>>')
sum=0
for i in range(len(func)):
    if i%2==1 and func[i].isdigit():
        sum+=1
print(sum)
View Code

9、列表li=[11,22,33,44,55,77,88,99,90]将大于66的值保存到字典的一个key中,小于66的值保存到第二个key中

li=[11,22,33,44,55,77,88,99,90]
result={}
for row in li:
    if row<66:
        if 'key1' not in result:
            result['key1']=[]
        result['key1'].append(row)
    else:
        if 'key2' not in result:
            result['key2']=[]
        result['key2'].append(row)
print(result)
方法一
li=[11,22,33,44,55,77,88,99,90]
result={}
for row in li:
    result.setdefault('key1',[])
    result.setdefault('key2',[])
    if row>66:
        result['key1'].append(row)
    else:
        result['key2'].append(row)
print(result)
方法二

10、用户输入数字(如:5+8+8),并把数字相加,将最后的结果添加到字典dic={'最终计算结果':None}

content=input('请输入内容>>>').strip()
dic={'最终计算结果':None}
li=content.split('+')
sum=0
for i in li:
    if i.isdigit():
        sum+=int(i)
dic['最终计算结果']=sum
print(dic)
View Code

11、查找列表li的元素,移除元素的空格,并找出以'A'或者以'a'为开头,并以'c'为结尾的元素,添加到新的列表,最后循环打开此列表

扫描二维码关注公众号,回复: 7165686 查看本文章
li=['taibai','alexC','AbC','egon','Ritian','Wusir',' aqc']
l1=[]
for i in li:
    li_str=i.strip()
    if li_str.startswith('A') or li_str.startswith('a') and li_str.endswith('c'):
        l1.append(li_str)
for i in l1:
    print(i)
View Code

12、添加用户名和密码到列表

user_list=[
    {'username':'barry','password':'1234'},
    {'username':'alex','password':'asdf'}
]
board=['张三','李小四','王二麻子']
while 1:
    username=input('请输入用户名\输入"Q"或者"q"退出>>>')
    if username.upper()=='Q':
        break
    wordpass=input('请输入密码>>>')
    for i in board:
        if i in username:
            username=username.replace(i,'*'*len(i))
    user_list.append({'username':username,'wordpass':wordpass})
    print({'username':username,'wordpass':wordpass})
print(user_list)
View Code

猜你喜欢

转载自www.cnblogs.com/xiao-le/p/11454574.html