2024-09-27 04:19:28 发布
网友
我正在努力解决python中的一个基本问题。我需要在某个位置读取一个字符串来修改它。在
例如:对于字符串'abcd',我想读取第3个位置(第2个位置是因为从0开始),并将其更改为字母表中的下一个字母'abdd'。但是,如果字符串碰巧是'abrd',它应该改为'absd',等等,所以我需要在一个特定的位置读写,让其他的东西保持原样;这应该是世界上最简单的事情,但我找不到怎么做。在
'abcd'
'abdd'
'abrd'
'absd'
问题的核心答案很简单:使用列表切片语法:
>>> string='abcd' >>> print string[:2] + 'd' + string[3:] abdd
如果您可以假设只增加字符串的序数值是安全的,那么您可以只执行以下操作:
既然你的问题中没有具体说明,我想这就是你需要的。如果您想从“z”循环到“a”,或者特别处理不同的字母大小写或unicode字符集,您可能会找到一些粗略的修补程序。在
如果您有一个比增加ord更复杂的问题,请考虑使用translation table
ord
除了@kojiro回答。另一种方法是将字符串切换到列表并将其连接回去。例如:
S = 'abcd' // Convert to list L = list(S) // Change 3rd position L[3] = 'd' // Join it back and print print ''.join(L)
但是,如果需要替换不同的字符,可以定义一个字典映射来简化转换过程。例如:
问题的核心答案很简单:使用列表切片语法:
如果您可以假设只增加字符串的序数值是安全的,那么您可以只执行以下操作:
^{pr2}$既然你的问题中没有具体说明,我想这就是你需要的。如果您想从“z”循环到“a”,或者特别处理不同的字母大小写或unicode字符集,您可能会找到一些粗略的修补程序。在
如果您有一个比增加
ord
更复杂的问题,请考虑使用translation table除了@kojiro回答。另一种方法是将字符串切换到列表并将其连接回去。例如:
但是,如果需要替换不同的字符,可以定义一个字典映射来简化转换过程。例如:
^{pr2}$相关问题 更多 >
编程相关推荐