Tiny_Lu
不忘初心

day08 简单习题

1. 有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中

即: {'k1': 大于66的所有值, 'k2': 小于66的所有值}

dic = {'k1': [], 'k2': []}
for i in nums_list:
    if i > 66:
        nums1 = dic['k1']
        nums1.append(i)
    elif i < 66:
        nums2 = dic['k2']
        nums2.append(i)
print(dic)

2. 统计s='hello alex alex say hello sb sb'中每个单词的个数

结果如:{'hello': 2, 'alex': 2, 'say': 1, 'sb': 2}

dic = {}
b = s.split(' ')
for x in b:
    if x == ' ':
        continue
    else:
        dic[x] = s.count(x)
print(dic)


3. 写代码,有如下变量,请按照要求实现每个功能 
name = " aleX"
# 1)    移除 name 变量对应的值两边的空格,并输出处理结果
# 2)    判断 name 变量对应的值是否以 "al" 开头,并输出结果
# 3)    判断 name 变量对应的值是否以 "X" 结尾,并输出结果
# 4)    将 name 变量对应的值中的 “l” 替换为 “p”,并输出结果
# 5)    将 name 变量对应的值根据 “l” 分割,并输出结果。
# 6)    请输出 name 变量对应的值的第 2 个字符?
# 7)    请输出 name 变量对应的值的前 3 个字符?
# 8)    请输出 name 变量对应的值的后 2 个字符?
# 9)    请输出 name 变量对应的值中 “e” 所在索引位置?
# 10)    获取子序列,去掉最后一个字符。如: oldboy 则获取 oldbo。

print(name.strip())
print(name.startswith('al'))
print(name.endswith('X'))
print(name.replace('l', 'p'))
print(name.split('l'))
print(name[2])
print(name[0:3])
print(name[-2:])
print(name.find('e'))
print(name[:-1])
4. 假设有一个文件test.txt,内有如下内容
l=[
    {'name':'alex','age':84},
    {'name':'oldboy','age':73},
    {'name':'egon','age':18},
]
需求:
1. 读取文件内容
2. 计算这三个人的年龄总和

with open('test.txt', 'r', encoding='utf8') as t:
    test_data = t.read()
    print(test_data)
    test_data1 = test_data.replace('l=', '').replace('\n    ', '')
    test_list = eval(test_data1)
    print(test_list)


age = 0
for data in test_list:
    age = age + data['age']
print(age)

posted @ 2019-08-30 18:59  二二二二白、  阅读(94)  评论(0编辑  收藏  举报