常见面试题整理---Python代码篇

1.如何反序的迭代一个序列

## 如何反序的迭代一个序列
tempList = [1,2,3,4]
tempList.reverse()
for x in tempList:
    print(x)

## 如果不是list,最通用但稍慢一点的解决方案是
tempTuple = (1,2,3,4)
for i in range(len(tempTuple)-1,-1,-1):
    print(tempTuple[i])

2.使用Python进行查询和替换一个文本字符串

#使用Python来来进行查询和替换一个文本字符串
# Python中的replace()可以用来进行字符串替换
tempStr = 'Hello Java,Hello Python,Use JavaScript'
print(tempStr.replace('Hello','Bye'))

#Python中的sub()可以用来查找并替换字符串,sub()使用正则表达式来匹配
import re
rex=r'(Hello|Use)'
print(re.sub(rex,'Bye',tempStr))

3.重新实现str.strip(),注意不能使用string.*strip()

# 重新实现str.strip(),注意不能使用string.*strip()
def rightStrip(tempStr,splitStr):
    endindex = tempStr.rfind(splitStr)
    while endindex != -1 and endindex == len(tempStr)-1:
        tempStr = tempStr[:endindex]
        endindex = tempStr.rfind(splitStr)
    return tempStr

def leftStrip(tempStr,splitStr):
    startindex = tempStr.find(splitStr)
    while startindex==0:
        tempStr=tempStr[startindex+1:]
        startindex = tempStr.find(splitStr)
    return tempStr

testStr = '   Hello Python  '
print(testStr)
print(rightStrip(testStr,' '))
print(leftStrip(testStr,' '))

4.Python 的参数传递
注意Python中string,tuple,number属于不可更改对象;list,dict属于可修改对象

a = 1
def fun(a):
    a=2
fun(a)
print(a)
# 1

a=[]
def fun(a):
    a.append(1)
fun(a)
print(a)
#[1]

你可能感兴趣的:(python,面试题,Python)