欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

2020年最全python面试题汇总第03期(内附10题及答案)

程序员文章站 2022-03-08 13:24:09
经过自己面试的经验,我帮大家对python的知识点进行归类,让大家能在最短时间内掌握核心知识点,更高效的搞定 Python 面试! 今天我整理了关于“数据结构”和“字符串”的面试题,大家一起试试看自己的熟练程度吧 1 列举 Python 中的基本数据类型? 答: Python3 中有六个标准的数据类 ......

2020年最全python面试题汇总第03期(内附10题及答案)

 

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

今天我整理了关于“数据结构”和“字符串”的面试题,大家一起试试看自己的熟练程度吧

1 列举 python 中的基本数据类型?

答: python3 中有六个标准的数据类型:

字符串(string)、

数字(digit)、

列表(list)、

元组(tuple)、

集合(sets)、

字典(dictionary)。

 

2. 如何区别可变数据类型和不可变数据类型?

答: 从对象内存地址方向来说

可变数据类型:在内存地址不变的情况下,值可改变(列表和字典是可变类型,但是字典中的 key 值必须是不可变类型)

不可变数据类型:内存改变,值也跟着改变。(数字,字符串,布尔类型,都是不可变类型)可以通过 id() 方法进行内存地址的检测。

 

3.字符串大小写问题关于英文字符串的大小写转换问题,可以通过几个函数实现?

答:四种

(1)首字母大写

a ='hello,zhong yuan gong!!'

print(a.title())

(2)全部大写

print(a.upper())

(3)全部小写

print(a.lower())

(4)首个单词的首字母大写

print(a.capitalize())

输出结果为:

hello,zhong yuan gong!!

hello,zhong yuan gong!!

hello,zhong yuan gong!!

hello,zhong yuan gong!!

 

4. 如何检测字符串中只含有数字?

答:可以通过 isdigit 方法,例子如下

s1 = "12223".isdigit()

print(s1)

s2 = "12223a".isdigit()

print(s2)

结果如下:

#true

#false

 

5. 将字符串"ilovechina"进行反转的方法写出来

答:s1 = "ilovechina"[::-1] print(s1)

 

6. python 中的字符串格式化方式你知道哪些?

答:%s,format,fstring(python3.6 开始才支持,现在推荐的写法)

例子如下:

(1)通过位置格式化

print('hello, '.format('zhong', 'yuan', 'gong'))

(2)通过key填充

print('hello,,my name is !!'.format(name='tom', self='sir'))

(3)通过数组的下标填充

n=['tom', 'sir']

print('hello,,my name is !!'.format(n=1))

(4)通过字典的key填充,键名不加引号

m={'name': 'tom', 'self': 'sir'}

print('hello,,my name is !!'.format(m=m))

上面输出结果都是:

hello,tom,my name is sir!!

 

7.有一个字符串开头和末尾都有空格,比如“ adabdw ”,要求写一个函数把这个字符串的前后空格都去掉。

答:因为题目要是写一个函数所以我们不能直接使用 strip,不过我们可以把它封装到函数啊

def strip_function(s1):

return s1.strip()

s1 = " adabdw "

print(strip_function(s1))

 

8.说出你知道能删除字符串中的空格集中函数

答:c =' hello world !!! '

(1)去掉字符串开头和末尾的空格

print(c.strip())

(2)去掉字符串左边的空格

print(c.lstrip())

(3)去掉字符串右边的空格

print(c.rstrip())

(4)去掉字符串中所有的空格

print(c.replace(' ',''))

输出依次为:

hello world !!!

hello world !!!   

   hello world !!!

helloworld!!!

注意:这里不要把strip函数和split函数搞混了,前者是删除字符串中指定的字符,默认为空格,后者是用指定的字符分割字符串,默认也是空格

 

9. 一个编码为 gbk 的字符串 s,要将其转成 utf-8 编码的字符串,应如何操作?

答:

#转换字符串编码

s='hello,zhongyuan university,你很好!'

print(s.encode('utf-8'))

 

10.单引号、双引号、三引号的区别?

答:单引号和双引号是等效的,如果要换行,需要符号(\),三引号则可以直接换行,并且可以包含注释

如果要表示let’s go 这个字符串

单引号:s4 = ‘let\’s go’

双引号:s5 = “let’s go”

s6 = ‘i realy like“python”!’

这就是单引号和双引号都可以表示字符串的原因了