Python 3.x 使用Python将字符插入字符串

Python 3.x 使用Python将字符插入字符串,python-3.x,Python 3.x,如何使用Python向字符串添加字符?例如,我喜欢在字符串中间添加一个“:”:“0900”介于09和00之间。您可以使用 09:00 不能对字符串进行变异,但可以对其进行切片,以得到索引前的字符串的一半和索引后的字符串的一半。然后将两边与你中间想要的字符结合起来。 要将字符插入到特定位置,您需要使用称为切片的方法。您可以在此处查看确切的方法: 假设您总是希望插入长度可变的字符串的中间,那么只要字符的总和为偶数(要清楚,您提供的字符的总和为4),这种方法就可以工作。那么下面的方法就可以了: str

如何使用Python向字符串添加字符?例如,我喜欢在字符串中间添加一个“:”:“0900”介于09和00之间。

您可以使用

09:00


不能对字符串进行变异,但可以对其进行切片,以得到索引前的字符串的一半和索引后的字符串的一半。然后将两边与你中间想要的字符结合起来。 要将字符插入到特定位置,您需要使用称为切片的方法。您可以在此处查看确切的方法:

假设您总是希望插入长度可变的字符串的中间,那么只要字符的总和为偶数(要清楚,您提供的字符的总和为4),这种方法就可以工作。那么下面的方法就可以了:

string = "0099"
pos = int(len(string)/2)
new = string[:pos] + ":" + string[pos:]
print(new)
但是,如果您的字符串不是偶数,那么当所有字符都添加到一起时,
将放在错误的位置

遗憾的是,仅仅对十进制值使用
int()
并不能对其进行四舍五入,它只需去掉任何浮点值即可将其转换为整数。如本例所示:

>>> int(3.9)
3
相反,您可能希望使用
round()
函数:

pos = round(len(string)/2)

这也让我大吃一惊!您的代码中有一个错误:
TypeError:应为整数参数,得到float
。(提示:两个数字相除会留下一个浮点值)。不过这个方法很好。请把它改一下,以便我能把它修好-vote@Simon谢谢你指出这个错误,我已经更新了代码。现在我觉得完全忘记蟒蛇是件好事(2:)
pos = round(len(string)/2)
_input = '0900'
input_to_list = list(_input)
input_to_list.insert(round(len(input_to_list)/2), ':')
_input_updated = "".join(input_to_list)