标识符,成绩最值,列表删重,列表整合,升/降序排列

1.判断给定的字符串是否为合法的 Python 标识符

(1) 标识符由字母、下划线和数字组成,且不能以数字开头。示例代码如下:

fromTo12    # 合法的标识符
from#12    # 不合法的标识符,标识符不能包含#符号
2ndobj     # 不合法的标识符,标识符不能以数字开头

(2) Python中的标识符是区分大小写的。例如,andy和Andy是不同的标识符。

(3)Python中的标识符不能使用关键字。例如,if不能作为标识符。

import keyword

def Is_legalword(s): #判断是否是合法字符(数字、字母或下划线)
    for key in s:
        if not key in 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_':
            return False
    return True

def Is_legal(s):
    if s[0]=='_' or s[0].isalpha(): #开头为字母或下划线
        if keyword.iskeyword(s): #判断是否为Python保留关键字
             return False
        elif Is_legalword(s):
            return True
        else:
            return False
    else:
        return False

line=input()
print(Is_legal(line))

2.学生成绩单---最小、最大、平均成绩

score1 = [7,3,10,12,5,1,2,4,6,9] 
print(score1)
score1.sort()  ##升序
a = score1[0]
b = score1[-1]
c =sum(score1)/10
print(a)
print(b)
print(c)

3.编写程序,输入一个带重复元素的列表,将其中重复元素删除并输出

ils = eval(input("请输入列表:"))
lis_1=[]
for i in ils:
	if i not in lis_1:
		lis_1.append(i)
print("删除重复元素后的列表:{}".format(lis_1))

4.已知两个列表,将两个列表合成一个列表,降序排列

【有时候合并完列表,我们需要对新列表的元素进行排序,此时可以使用列表对象的sort()或者sorted()。二者的不同是sort()是列表对象固有的方法,sorted()不仅针对列表,可以对所有序列进行排序。】

list1 = [7,3,10,12,5,1,2] ##随机定义了两个列表
list2 = [4,6,11]
list3 = list1 + list2 ##列表的合并
list3.sort(reverse=True)  ##降序
print(list3)

5.生成包含20个随机数列表,然后将前十个元素升序排列,后十个元素降序排列,并输出结果

import random
s=[random.randint(0,100) for i in range(20)]
print(s)

l=s[0:10]
l.sort()  ##升序
s[0:10]=l

l=s[10:20]
l.sort(reverse=True)  ##降序
s[10:20]=l
print(s)

 

猜你喜欢

转载自blog.csdn.net/qq_50777680/article/details/121358565