Python练习二

1.统计列表lst = [12,2,16,30,28,10,16,20,6,18]中元素个数,找出最大值和最小值,

并给lst列表从大到小排序并输出显示。

lst = [12,2,16,30,28,10,16,20,6,18]
print(max(lst))
print(min(lst))
lst.sort(reverse=True)
print(lst)

结果:

30
2
[30, 28, 20, 18, 16, 16, 12, 10, 6, 2]

2.创建字典保存用户姓名和对应密码,输出所有用户姓名,并找出某个用户的密码。

di={'王明':'123','李明':'45678','张晓':'7894'}
print('王明','李明','张晓')
di.keys()
s=di['王明']
print(s)

结果:

王明 李明 张晓
123

3.使用两个元组分别保存学生姓名和对应成绩,找出成绩最高分学生的姓名。

student = ('张三', '李四', '王五', '刘六') ,score = (75, 62, 93, 81)

student = ('张三', '李四', '王五', '刘六')
score = (75, 62, 93, 81)
List1=list(score)
List2=list(student)
print(List2[List1.index(max(List1))])

结果:

王五

4.给定一串字符s = 'this is a Python program PYTHON is very good',

统计单词个数(假设所有单词以空格分隔)

s = 'this is a Python program PYTHON is very good'
t=len(s.split())
print(b)

结果:

9

5.合并列表lst1 = [3,7,44,78,6]和lst2 = [35,8,59,3,47,6]中的元素,

并用集合方法将重复元素去除。输出结果为[3, 35, 6, 7, 8, 44, 78, 47, 59]。

List1= [3,7,44,78,6]
List2= [35,8,59,3,47,6]
s=list(set(List1+List2))
print(s)

结果:

[3, 35, 6, 7, 8, 44, 78, 47, 59]

6.练习字典应用,统计下面一句英文中每个字符的出现次数。

s = 'Python is an easy to learn, powerful programming language.

It has efficient high-level data structures and a simple but effective

approach to object-oriented programming.' 。统计结果类似 {'p':21, 'a':5, 'x':2}

s = 'Python is an easy to learn, powerful programming language. It has efficient high-level data structures and a simple but effective approach to object-oriented programming.' 
s_List=list(s)
new_s_List=[]
for i in s_List:
    if i not in new_s_List:
        new_s_List.append(i)
t={}
for i in new_s_List:
    t[i]=s_List.count(i)
print(t)

结果:

{'P': 1, 'y': 2, 't': 12, 'h': 5, 'o': 9, 'n': 9, ' 
    ': 23, 'i': 9, 's': 6, 'a': 14, 'e': 16, 'l': 6, 'r': 10, '
    ,': 1, 'p': 6, 'w': 1, 'f': 5, 'u': 5, 'g': 7, 'm': 5, '.': 2,
    'I': 1, 'c': 5, '-': 2, 'v': 2, 'd': 3, 'b': 2, 'j': 1}

7.针对如下两个列表list_a=[4,2,3]和list_b=[2,7],

若元素不同则两两封装成一个元组,并将所有这样的无级打包成一个列表,

预期的结果如下[(4, 2), (4, 7), (2, 7), (3, 2), (3, 7)]。

List_a=[4,2,3]
List_b=[2,7]
List_c=list()
for i in List_a:
    for j in List_b:
        if (i!=j):
           List_c.append((i,j))
print(List_c)

结果:

[(4, 2), (4, 7), (2, 7), (3, 2), (3, 7)]

8.给出如下列表names=['Bob','JOHN','alice','bob','ALICE','J','Bob'],

(1)将姓名长度小于2字符的删除,并将写法不同但名字一样的名字合并,并按首字母大写形式输出,得到一个新的列表。

(2)在列表ans = ['Bob', 'John', 'Alice', 'Bob', 'Alice', 'Bob']中,

将所有重名人员进行计数并以字典的形式表示出来。

(1)

names=['Bob','JOHN','alice','bob','ALICE','J','Bob']
name=[]
for i in names:
    m=i.lower()
    n=m.title()
    if(len(n)>2 and n not in name):
        name.append(n)
print(name)

结果:

['Bob', 'John', 'Alice']

(2)

ans = ['Bob', 'John', 'Alice', 'Bob', 'Alice', 'Bob']
ans1=[]
for i in ans:
    if i not in ans1:
        ans1.append(i)
d = {}
for i in ans1:
    d[i] = ans.count(i)
print(d)

结果:

{'Bob': 3, 'John': 1, 'Alice': 2}

你可能感兴趣的:(python,python)