經過自己面試的經驗,我幫大家對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