风火编程--面试题

基础面试题

1. 选出字典中所有值为真的元素

d = {i: i for i in range(10)}
d.update({str(i): None for i in range(1000000)})

# 参考答案
r = {i[0]: i[-1] for i in d.items() if i[-1]}
print(r)

2.对列表中的学生信息列表按照’age’降序排序

lst = [{'name': '小明', 'age': 10}, {'name': '小红', 'age': 11}]

# 以下是参考答案
r = sorted(lst, key=lambda x: x['age'], reverse=True)
print(r)

3.统计字符串中有多少种不同的字符, 并给出最多的前三个字符及其个数

s = "1234356897089234234345345789890"

# 参考答案
from collections import Counter
c = Counter(s)
print(len(c))
print(c.most_common(3))

4.无限循环遍历字符串

s = "1234abcd!@"

# 参考答案
from itertools import cycle
s_gen = cycle(s)
for i in s_gen:
    print(i)

你可能感兴趣的:(python基础)