关于#python#的两道问题,如何解决?求补全。

【问题描述】给出一组学生的学号姓名信息。请提取并输出所有的学号信息(学号长度固定8位)。
【输入形式】一行字符。包括一个或多个学生的学号姓名,以空格分隔(同一个学生的学号和姓名之间没有空格)。例如:20200001张三 20200002李四 20200003王麻子
【输出形式】一行字符。从输入提取出的学号信息,学号间以空格分隔。 例如:20200001 20200002 20200003
【样例输入】20200001张三 20200002李四 20200003王麻子
【样例输出】20200001 20200002 20200003

img

【问题描述】因录入员失误,把8位的学号输成了6位(缺失了前2位)。例如:190001的正确学号是20190001(正确学号的前4位是入学年份,只考虑学号前2位是20的情况)。现输入一组错误学号,学号间空格分隔,请输出一组正确的学号。
【输入形式】一行字符,包括一个或多个错误学号,空格分隔
【输出形式】一行字符,即所求的一个或多个正确学号,空格分隔
【样例输入】190001 190002 190003
【样例输出】20190001 20190002 20190003

img

代码如下:

需要的填充代码

def stuid(data2):
    result = [x[:7] for x in data2]
    return result


def add_id(data2):
    result = ["20" + x for x in data2]
    return result

完整代码

print("#######################################################################")
_input = input("请输入学号信息:如 20200001张三 20200002李四 20200003王麻子\n")
temp = _input.replace("\n", "").split(" ")
result = [x[:7] for x in temp]
print("#######################################################################")

_input = input("请输入错误学号信息:如 190001 190002 190003\n")
temp = _input.replace("\n", "").split(" ")
result = ["20" + x for x in temp]
print(" ".join(result))


def stuid(data2):
    result = [x[:7] for x in data2]
    return result


def add_id(data2):
    result = ["20" + x for x in data2]
    return result

输出为:

#######################################################################
请输入学号信息:如 20200001张三 20200002李四 20200003王麻子
20200001张三 20200002李四 20200003王麻子
2020000 2020000 2020000
#######################################################################
请输入错误学号信息:如 190001 190002 190003
190001 190002 190003
20190001 20190002 20190003

如有问题及时沟通

1、return [item for item in data2 if item.isdigit()] 2、return ["20"+item for item in data2]
def stuid(data2):
    return [i[:8] for i in data2]


data1 = input(">>>").split()
student_id = stuid(data1)
for x in student_id:
    print(x, end = ' ')
    

def add_id(data2):
    return ['20' +i for i in data2]
    
data1 = input(">>>").split()
result = add_id(data1)
for x in result:
    print(x, end = ' ')