Python由于其簡單易學(xué)的特性,常常作為軟件測試工程師入門的開發(fā)語言,并且由于python在Web自動化測試、APP自動化測試、還有接口測試中都擁有比較突出的優(yōu)勢,而且還有很多可用的框架技術(shù),所以python語言是很實用的軟件自動化測試方面的語言。下面給大家推薦一些軟件測試工程師面試遇到的一些python筆試題。
一、python實現(xiàn)九九乘法口訣。
# 定義一個序列for i in range(1,10):
for j in range(1,i+1):
# 采用格式化輸出的方式
print("%d*%d=%d\t"%(j,i,i*j),end="")
print("")
二、python實現(xiàn)冒泡排序
L=[12,434,67,8987,543,3456,566,5434,566,54,565432,3456,78,9,876,543,45678,987]
# len(L)表示列表L的長度(元素個數(shù)
)for i in range(len(L)-1):
# i用來控制最后一個參與比較的數(shù)據(jù)的下標(biāo)
for j in range(len(L)-1-i):
# j用來表示列表中相鄰兩個元素的下標(biāo),最后一個可比的下標(biāo)取決于i
if L[j]>L[j+1]:
# 判斷相鄰兩個元素的大小,如果前一個比后一個大
L[j],L[j+1]=L[j+1],L[j]
# 交換兩個相鄰元素的值print(L)
三、python實現(xiàn)下面的圖形輸出:
*****
****
***
**
*
**
***
****
*****
代碼實現(xiàn)如下所示:
for i in range(-4, 5):
print("*"*(abs(i)+1))
四、python實現(xiàn)求三角形周長和面積(面向過程)
代碼實現(xiàn):
#(1)輸入邊長
a = float(input('輸入三角形第一邊長: '))
b = float(input('輸入三角形第二邊長: '))
c = float(input('輸入三角形第三邊長: '))
#(2)計算周長
C = (a + b + c
計算半周長
S=(a+b+c)/2
#(3)計算面積
area = (s*(s-a)*(s-b)*(s-c)) ** 0.5
#(4)輸出結(jié)果
print('三角形面積為 %0.2f' %area)
五、python實現(xiàn),定義兩個列表,打印出兩個數(shù)組不重合的部分。
代碼實現(xiàn):
def find_diff_intwo_list(list1,list2):
'''
:param list1:列表1
:param list2: 列表2
:return:
'''
same,diff=[],[]
seq=list(set(list2))
for i in list(set(list1)):
if i not in list2:
diff.append(i)
else:
same.append(i)
for j in same:
seq.remove(j)
print("same is {},diff is {}".format(same,diff+seq))
六、閱讀下面的python代碼,回答問題。
a=int(input())
b=int(input())
nReturn = 0
if a < 10:
// 分支一
nReturn += 1
if b < 10:
// 分支二
nReturn += 10
print(nReturn)
根據(jù)以上代碼,判斷nReturn有可能的所有取值,并且舉例當(dāng)nReturn取各個值的時候,a、b各自的值。
【回答】
nR的可取值:0,1,10,11.
當(dāng)兩個條件都不成立的時候,
nR=0,a取大于等于10的數(shù)值(10),b取大于等于10的值(10);
當(dāng)兩個條件都成立的時候,
nR=11,a取小于10的值(9),b取小于10的值(9)
分支1成立,分支2不成立,nR=1,a取小于10的值(6),b取大于等于10的值(11)
分支1不成立,分支2成立,nR=10,a取大于等于10的值(16),b取小于10的值(5)