第一题 有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中,
即: {'k1': 大于66的所有值, 'k2': 小于66的所有值}
number_list = [11,22,33,44,55,66,77,88,99,90]
K1_list = []
K2_list = []
number_dic= {'K1_list':K1_list,'K2_list':K2_list}
for i in number_list:
if i>66:
K1_list.append(i)
elif i<66:
K2_list.append(i)
else:
continue
print(number_dic)
第二题 统计s='hello alex alex say hello sb sb'中每个单词的个数,结果如:{'hello': 2, 'alex': 2, 'say': 1, 'sb': 2}
第一种解法
s = 'hello alex alex say hello sb sb'
number_dic = {'hello': s.count('hello'), 'alex': s.count('alex'), 'say': s.count('say'), 'sb': s.count('sb')}
print(number_dic)
第二种解法
import jieba
s='hello alex alex say hello sb sb'
j=0;k=0;l=0;m=0
res_list=jieba.lcut(s)
for i in res_list:
if len(i) == 5:
j = j + 1
elif len(i) == 4:
k = k + 1
elif len(i) == 3:
l = l + 1
elif len(i) == 2:
m = m + 1
else:
continue
number_dic = {'hello': j, 'alex': k, 'say': l, 'sb': m}
print(number_dic)
第三题
name = " aleX"
(1)移除 name 变量对应的值两边的空格,并输出处理结果
print(name.strip())
(2) 判断 name 变量对应的值是否以 "al" 开头,并输出结果
if name.startswith(name):
print('是'+name)
else:
print('不是')
(3)判断 name 变量对应的值是否以 "X" 结尾,并输出结果
if name.endswith(name):
print('是'+name)
else:
print('no')
(4)将 name 变量对应的值中的 “l” 替换为 “p”,并输出结果
print(name.replace('l','p'))
(5)将 name 变量对应的值根据 “l” 分割,并输出结果。
n=name.split('l')
print(n)
(6)请输出 name 变量对应的值的第 2 个字符?
print(name[1])
(7)请输出 name 变量对应的值的前 3 个字符?
print(name[0:3])
(8)请输出 name 变量对应的值的后 2 个字符?
print(name[-2:])
(9)请输出 name 变量对应的值中 “e” 所在索引位置?
print(name.index('e'))
(10)获取子序列,去掉最后一个字符。如: oldboy 则获取 oldbo
n=name[:-1]
print(n)
第四题 假设有一个文件test.txt,内有如下内容
l=[
{'name':'alex','age':84},
{'name':'oldboy','age':73},
{'name':'egon','age':18},
]
(1)读取文件内容
flie_path = r'test.txt'
f = open(flie_path,'a',encoding='utf8')
data = f.read()
(2)计算这三个人的年龄总和
sum=0
l =[{'name':'alex','age':84},{'name':'oldboy','age':73},{'name':'egon','age':18}]
for i in l:
j=i['age']
sum=sum+j
print(sum)