python 常见的面试题
字符串 "axbyczdj",如果得到结果“abcd”
str1 = "axbyczdj"
list1 = []
for i in range(len(str1)):
if i%2 == 0:
list1.append(str1[i])
print(''.join(list1))
也可以用比较新潮的技术
str1[::2]
已知一个字符串为“hello_world_yoyo”, 如何得到一个队列 ["hello","world","yoyo"]
str1 = "hello_world_yoyo"
list1= str1.split('_')
已知一个队列,如: [1, 3, 5, 7], 如何把第一个数字,放到第三个位置,得到:[3, 5, 1, 7]
list1 = [1, 3, 5, 7]
list1.insert(3,list1[0])
print(list1[1:])
已知 a = 9, b = 8,如何交换a和b的值,得到a的值为8,b的值为9
a,b = b,a
已知一个队列[1, 3, 6, 9, 7, 3, 4, 6]
# 1.sort排序,正序
a.sort() print(a)
# 2.sort倒叙
a.sort(reverse=True) print(a)
# 3.去重
b = list(set(a)) print(b)
list的[]中有三个参数,用冒号分割
list[param1:param2:param3]
param1,相当于start_index,可以为空,默认是0
param2,相当于end_index,可以为空,默认是list.size
param3,步长,默认为1。步长为-1时,返回倒序原序列
print(s[-1]) # e param1 = -1,只有一个参数,作用是通过下标访问数据,-1为倒数第一个
print(s[:-1]) # abcd param1 = 0,param2 = -1,作用是返回从start_index = 0到end_index = -1的一串数据
print(s[::-1]) # edcba param1 = 0,param2 = list.size,param3 = -1,作用是返回倒序的原list
print(s[1::-1])
ba
print(s[::-1][-2:])
ba
print(s[0:2][::-1])
ba