python程序设计 |
您所在的位置:网站首页 › 复试面试内容怎么写 › python程序设计 |
目录
1.又见字符统计2.字符串逆序3.矩阵相加4.字符串基本操作5.不常见的单词6.列表的基本操作7.打印空心三角形8.温度转换9.字符串循环左移10.列表合并去重
1.又见字符统计
【题目描述】 输入英文字符,请按照字母表顺序统计字符串中所有出现的字母的个数(计数时不区分大小写),若输入的内容有误,则输出Error! 【输入描述】 一串只包含英文字母的字符。 【输出描述】 按题目要求输出。 【输入样例1】 HelloWorld 【输出样例1】 [0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 3, 0, 0, 2, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0] 【输入样例2】 Hello, World! 【输入样例2】 Error 代码: s = input().lower() cnt = dict.fromkeys([chr(97 + i) for i in range(26)], 0) if s.isalpha(): for i in s: cnt[i] += 1 print([i for i in cnt.values()]) else: print('Error') 2.字符串逆序Description 输入一个字符串,对该字符串进行逆序,输出逆序后的字符串。 Input 输入在一行中给出一个不超过80个字符长度的、以回车结束的非空字符串。 Output 在一行中输出逆序后的字符串。 Sample Input 1 Hello World! Sample Output 1 !dlroW olleH 代码: print(input()[::-1]) 3.矩阵相加Description 正整数n,代表要输入的是n*n的矩阵,两个矩阵由用户输入,计算输出两个矩阵相加的和。 Input 一个整数n,和两个矩阵的值。 Output 两个矩阵相加后的值,每个元素占三位,中间对齐,元素之间由两个空格组成。 Sample Input 1 3 12 3 -5 1 -9 0 3 6 8 1 8 9 6 5 4 3 2 1 Sample Output 1 13 11 4 7 -4 4 6 8 9 代码: n = int(input()) a = [[]for i in range(n)] for i in range(n): a[i] = list(map(int,input().split())) for i in range(n): a[i] = [j + k for j, k in zip(a[i], list(map(int,input().split())))] for i in range(n): for j in range(n): print(f'{a[i][j]:^3}', end=' ') print() 4.字符串基本操作Description 输入一行字符串,输出每行英文字母、数字及其他字符的个数,并将字符串中的小写字母变成大写字母,大写字母保持不变后输出。 Sample Input 1 aBBcc学123习一个BCc Sample Output 1 字母字符数有8个,阿拉伯数字字符数有3个,其他字符有4个,本条字符转换为:ABBCC学123习一个BCC 代码: s = input().upper() cnt1, cnt2, cnt3 = 0, 0, 0 for i in s: if i.isupper(): cnt1 += 1 elif i.isdigit(): cnt2 += 1 else: cnt3 += 1 print(f'字母字符数有{cnt1}个,阿拉伯数字字符数有{cnt2}个,其他字符有{cnt3}个,本条字符转换为:' + s) 5.不常见的单词Description 给定两个字符串 S1 和 S2 ,确保 S1 与 S2 都只有空格和单词组成。且保证每个单词仅由小写字母组成。 如果某个单词在其中一个句子中恰好出现一次,在另一个句子中却没有出现 ,那么这个单词就是 不常见的 。 给你两个 句子s1和s2 ,返回所有不常用单词的列表。返回列表中单词要求按 S1 中出现,S2中出现的顺序组织。 Input 两行,一行代表一个字符串。 Output 一行,不常见单词列表。 Sample Input 1 this apple is sweet this apple is sour Sample Output 1 [‘sweet’, ‘sour’] 代码: s = input().split() + input().split() print([i for i in s if s.count(i) == 1]) 6.列表的基本操作【题目描述】 输入一串用空格隔开的数字字符,请依次将他们放入列表中保存,并去除列表中的重复项,最后将列表中的元素按数值大小从小到大进行排序,输出排好序后下标为i的字符。 【注意】测试样例中保证排完序的列表中至少有i+1个元素。 【输入描述】 第一行:一串以空格隔开的数字字符串。 第二行:待输出列表的下标值i。 【输出描述】 排好序的列表中下标为i的元素。 【输入样例1】 9 7 17 6 7 5 8 4 【输出样例1】 9 代码: a = list(set(list(map(int, input().split())))) a.sort() print(a[int(input())]) 7.打印空心三角形Description 输入任意一个大于零的整数N,根据输入的整数不同打印出不同行数的空心三角形。 Input 一个大于0的整数。 Output 一个空心三角形。 Sample Input 1 6 Sample Output 1 * ** * * * * * * ******代码: n = int(input()) for i in range(1,n): for j in range(0,i): if j==i-1: print('*') elif j==0: print('*',end='') else: print(' ',end='') for i in range(n): print('*',end='') 8.温度转换Description 温度的刻画有两个不同体系:摄氏度(Celsius)和华氏度(Fahrenheit)。请编写程序将用户输入华氏度转换为摄氏度,或将输入的摄氏度转换为华氏度。转换算法如下:(C表示摄氏度、F表示华氏度)C = ( F - 32 ) / 1.8;F = C * 1.8 + 32。 要求如下: (1) 输入输出的摄氏度可采用大小写字母C结尾,温度可以是整数或小数,如:12.34C指摄氏度12.34度; (2)输入输出的华氏度可采用大小写字母F结尾,温度可以是整数或小数,如:87.65F指华氏度87.65度; (3)输出保留小数点后两位,输入格式错误时,输出提示:输入格式错误; (4) 使用input()获得测试用例输入时,不要增加提示字符串。 Sample Input 1 12.34C Sample Output 1 54.21F Sample Input 2 12.34 Sample Output 2 输入格式错误! Sample Input 3 12.34c Sample Output 3 54.21f 代码: s = input() if s[-1] in ['F', 'f']: print('%.2f%c' % ((float(s[:-1])-32)/1.8, chr(ord(s[-1])-3))) elif s[-1] in ['C', 'c']: print('%.2f%c' % (float(s[:-1])*1.8+32, chr(ord(s[-1])+3))) else: print('输入格式错误!') 9.字符串循环左移Description 给定一个字符串S,要求把S的前k个字符移动到S的尾部,如把字符串“abcdef”前面的2个字符‘a’、‘b’移动到字符串的尾部,得到新字符串“cdefab”,称作字符串循环左移k位。 Input 输入在第1行中给出一个不超过100个字符长度的、以回车结束的非空字符串;第2行给出非负整数N。 Output 在一行中输出循环左移N次后的字符串。 Sample Input 1 abcd 2 Sample Output 1 cdab 代码: s, n = input(), int(input()) print(s[n:] + s[:n]) 10.列表合并去重【题目描述】 输入两个列表alist和blist,要求列表中的每个元素都为正整数且不超过10;合并alist和blist,并将重复的元素去掉后输出一个新的列表clist。同时为保证输出结果一致,请将列表clist内元素按升序排序之后再输出。 【输入描述】 共两行,每一行都用来输入列表中的元素值,以空格隔开。 【输出描述】 共一行,以列表形式打印输出。 【输入样例1】 1 2 3 4 3 2 【输出样例1】 [1, 2, 3, 4] 代码: a = list(map(int, input().split())) b = list(map(int, input().split())) print(sorted(list(set(a + b)))) |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |