2020年最全python面试题汇总第05期(内附字符串8题及答案)

经过自己面试的经验,我帮大家对python的知识点进行归类,让大家能在最短时间内掌握核心知识点,更高效地搞定 Python 面试!


前两天发布的“字符串”面试题很有用,但有些朋友提议,能否有些编程题,今天它来了!真的是吐血总结啊


1.敏感词汇过滤程序,用户输入若有敏感词汇,则替换为"XXX"
答:代码如下:
get_input = input("请输入>>>") if "罗志祥" in get_input: print
(get_input.replace("罗志祥","xxx"))

2.水果店里有一堆水果,“苹果5个,香梨4个,西瓜3个,哈密瓜6个,桃子3个,桔子7个”,写个程序,统计一共有多少个水果?
答:
fruits ='苹果5个,香梨4个,西瓜3个,哈密瓜6个,桃子3个,桔子7个'
Sum =0
for i in range(len(fruits)):
if fruits[i] =='个':
Num=int(fruits[i-1])
Sum=Sum+Num
print(Sum)
运行结果:28

3.利用下划线"_"将列表的每一个元素拼接成字符串
案例一(单纯字符串)
test="罗志祥劈腿厉害还是蒋凡厉害"
v='_'.join(test)
print(v)
运行结果:罗_志_祥_劈_腿_厉_害_还_是_蒋_凡_厉_害
案例二(数组)
test=['罗志祥','马蓉','蒋凡','出轨王']
运行结果:罗志祥_马蓉_蒋凡_出轨王

4.用最简洁的代码,写出一个九九乘法表
for i in range(1,10):
for j in range(1,i+1):
print('%s*%s=%s' %(i,j,i*j),end=' ')
print()
运行结果:
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81

5.给你一个字符串 a, 请你输出逆序之后的a。例如:a=‘xydz’则输出:zdyx
方法一.循环方法
m = list(a)
for i in range(len(a)-1,-1,-1):
print(m[i],end = '')
方法二.切片方法
print(a[::-1])

6.用Python编写一个程序,要求输入一个列表,返回值为一个字符串,字符串的内容由列表中各个元素拼接而成。
答:示例代码如下:
def concatenateList(myList):
output = ''
for item in myList:
output = output + str(item)
return output
print(concatenateList(["罗志祥","马蓉","文章","蒋凡","白百合","李小璐","洗头房VVVVIP用户"]))
输出结果:罗志祥马蓉文章蒋凡白百合李小璐洗头房VVVVIP用户

7.最大公约数&最小公倍数
输入两个数值,求两个数的最大公约数和最小公倍数.
1.两个或多个整数公有的倍数叫做它们的公倍数,其中除0以外最小的一个公倍数就叫做这几个整数
的最小公倍数。
2.求最小公倍数(cm)的算法:最小公倍数=两个整数的乘积/最大公约数
num1 = int(input("输入第一个数:"))
num2 = int(input("输入第二个数:"))
min_num = min(num1,num2) #两个数的最小值
#找出两个中较小的一个数——min
if num1 >= num2:
min = num2
else:
min = num1
for i in range(1,min+1):
if num1%i == 0 and num2%i == 0:
max = i
print('最大公约数为%d' %(max))
print('最小公倍数为%d' %((num1 * num2)/max))
输出结果演示:
输入第一个数:5
输入第二个数:6
最大公约数为1
最小公倍数为30

8.检测大写字母
给定一个单词,你需要判断单词的大写使用是否正确。
我们定义,在以下情况时,单词的大写用法是正确的:
1.全部字母都是大写,比如"USA
2.单词中所有字母都不是大写,比如"leetcode"
3.如果单词不只含有一个字母,只有首字母大写,比如"Google"
否则,我们定义这个单词没有正确使用大写字母。
示例1:
输入:"USA
输出:True
示例2:
输入:"FlaG"
输出: False
注意:输入是由大写和小写拉丁字母组成的非空单词。

答:示例代码如下
word = input('请输入单词:')
print(word.upper()==word or word.lower()==word or word.title()==word )
运行结果如下:

请输入单词:USA
True

请输入单词:google
True

请输入单词:flaG
False

原文地址:https://www.cnblogs.com/zhangzilong/p/12796809.html