Python 面试问题:字符串操作(1)​

关于字符串操作的 Python 面试问题

问题 1.len() 是有效的字符串方法吗

不是。使用函数 len() 获取字符串的长度,如:len(string),不能作为方法调用.string.len()。

问题 2.title() 方法有什么作用

它返回一个标题大小写的字符串,单词以大写字母开头,其他所有内容都是小写的。

问题 3.如何去掉字符串前后的空格

>>> string = "   Python  "
>>> string.strip()
'Python'

问题 4.find() 和 index() 字符串方法有什么区别

如果未找到子字符串,find() 将返回 -1,index() 将引发 ValueError。

问题 5.如何将逗号分隔的字符串为列表

>>> string = "I,Love,Python"
>>> string.split(",")
['I', 'Love', 'Python']

问题 6.如何进行字符串的切片

以 string[start : end : step] 的形式进行切片。

>>> string = "Python"
>>> string[1:4]
'yth'
>>> string[0:5:2]
'Pto'

问题 7.如何将多行字符串转换为列表

>>> string = '''I
Love
Python
'''
>>> string.splitlines()
['I', 'Love', 'Python']

问题 8.如何确定字符串是否包特殊字符或标点符号

使用 isalnum() 方法,如果 string 至少有一个字符并且所有字符都是字母或数字则返回 True,否则返回 False。

>>> string = "I,Love,Python"
>>> string.isalnum()
False
>>> string = "ILovePython"
>>> string.isalnum()
True

问题 9.如何确定字符串是否只包含数字

isdigit() 方法检测字符串是否只由数字组成,只对 0 和 正数有效。

>>> string = "123"
>>> string.isdigit()
True
>>> string = "a123"
>>> string.isdigit()
False

问题 10.count() 方法有什么作用

count() 方法用于统计字符串里某个字符或子字符串出现的次数。不是字符串中的字符数。

>>> string = "ILovePython"
>>> string.count('o')
2
>>> string.count('o', 3, 10)
1

问题 11.partition() 字符串方法有什么作用

Partition() 用来根据指定的分隔符将字符串进行分割。其中包含分隔符之前的子字符串、分隔符本身和分隔符之后的子字符串。

>>> string = "I,Love,Python"
>>> string.partition(',')
('I', ',', 'Love,Python')

问题 12.如何替换字符串中的子字符串

>>> string = "I,Love,Python"
>>> string.replace('I', 'You')
'You,Love,Python'

问题 13.如何将制表符转换为空格

xpandtabs() 方法把字符串中的 tab 符号 \t 转为空格。

>>> string = "I\tLove\tPython"
>>> string.expandtabs(tabsize=8)
'I       Love    Python'

问题 14.如何将一个字符串列表组合成一个字符串

>>> lst = ['I', 'Love', 'Python']
>>> string = " ".join(lst)
>>> string
'I Love Python'

问题 15.如何让字符串居中

center() 返回一个指定长度的字符串,原字符串居中,默认使用空格填充两端。

>>> string = "Python"
>>> string.center(20, '*')
'*******Python*******'

问题 16.如何执行字符串内的代码

exec 执行储存在字符串或文件中的 Python 语句。

>>> exec('print("Hello World")')
Hello World
>>> exec ("for i in range(5):print (i, end=' ')")
0 1 2 3 4 

问题 17.如何创建字符串模板

Template 是 string 模块提供的一个字符串模板功能,默认以 $ 标识需要替换的变量。

from string import Template
T_string = Template('$who Love $do')
string = T_string.substitute(who="I", do="Python")
print(string) # 输出:I Love Python

问题 18.如何切片方法反转字符串

string = input("请输入一个字符串:")
reversed_str = string[::-1]
print(reversed_str)

问题 19.如何使用迭代方法反转字符串

string = input("请输入一个字符串:")
reversed_str = ''
for i in range(len(string)-1, -1, -1):
    reversed_str += string[i]
print(reversed_str)

问题 20.如何在不使用 len() 函数的情况下获取字符串的长度

string = input("请输入一个字符串:")
count = 0
for char in string:
    count += 1
print(count)
  • 11
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值