如何将字符串中的索引连接到 Python 中的另一个字符串
How to Concatenate an Index in a String to Another String in Python
我有一串长度例如20
我想循环连接字符串中的最后 6 个字符
我是这样做的:
leng = len(theString)
leng2 = leng -6
for i in range(leng2, leng)
a += theString.index(i)
print a
但我在“a += theString.index(i)”中遇到错误
说 "TypeError: expected a character buffer object"
theString.index
的参数必须是字符串,所以,使用
a += theString.index(str(i))
但是,您的代码一定是不完整的——例如,a
从未被初始化! -- 所以这个修复虽然不可或缺,但还不够。请显示 all 代码和示例,说明对于 theString
.
的某个初始值您期望的结果
要在索引 i
处获取字符串 a
的字符,您需要执行 a[i]
。但是,如果我对问题的理解正确,那么有一种更简单的方法可以满足您的要求。
您可以 slice 字符串的最后 6 个字符,a
像这样:
a[-6:]
这将为您提供一个 6 个字符的字符串(假设 a
有那么多字符。)
所以要将字符串的最后 6 个字符连接到自身,您可以这样做
a += a[-6:]
也就是说,您不需要一个字符一个字符地执行此操作。
你有两个字符串 A 和 B。您想要将 B
的最后 6
个字符连接到 A
。如果我是对的,那么你可以这样做:
# this is faster way
>>> A = "abcdefg"
>>> B = "0123456789"
>>> A = A + B[-6:]
>>> A
'abcdefg456789'
如果您想遍历字符串 B
来连接,则
>>> l = len(B)-6;
>>> for i in range(l,len(B)):
A = A + B[i]
>>> A
'abcdefg456789'
字符串的index
方法从字符串中获取子字符串作为参数。
在代码中,您给出了为什么会出现此类异常的整数值。
更新您的代码:
>>> for i in range(leng2, leng):
... a += theString[i]
可以通过字符串的slice
方法直接获取后六位字符。
>>> theString = "qazxswedcvfrtgbnhyuj"
>>> theString[-6:]
'bnhyuj'
我有一串长度例如20
我想循环连接字符串中的最后 6 个字符
我是这样做的:
leng = len(theString)
leng2 = leng -6
for i in range(leng2, leng)
a += theString.index(i)
print a
但我在“a += theString.index(i)”中遇到错误
说 "TypeError: expected a character buffer object"
theString.index
的参数必须是字符串,所以,使用
a += theString.index(str(i))
但是,您的代码一定是不完整的——例如,a
从未被初始化! -- 所以这个修复虽然不可或缺,但还不够。请显示 all 代码和示例,说明对于 theString
.
要在索引 i
处获取字符串 a
的字符,您需要执行 a[i]
。但是,如果我对问题的理解正确,那么有一种更简单的方法可以满足您的要求。
您可以 slice 字符串的最后 6 个字符,a
像这样:
a[-6:]
这将为您提供一个 6 个字符的字符串(假设 a
有那么多字符。)
所以要将字符串的最后 6 个字符连接到自身,您可以这样做
a += a[-6:]
也就是说,您不需要一个字符一个字符地执行此操作。
你有两个字符串 A 和 B。您想要将 B
的最后 6
个字符连接到 A
。如果我是对的,那么你可以这样做:
# this is faster way
>>> A = "abcdefg"
>>> B = "0123456789"
>>> A = A + B[-6:]
>>> A
'abcdefg456789'
如果您想遍历字符串 B
来连接,则
>>> l = len(B)-6;
>>> for i in range(l,len(B)):
A = A + B[i]
>>> A
'abcdefg456789'
index
方法从字符串中获取子字符串作为参数。
在代码中,您给出了为什么会出现此类异常的整数值。
更新您的代码:
>>> for i in range(leng2, leng):
... a += theString[i]
可以通过字符串的slice
方法直接获取后六位字符。
>>> theString = "qazxswedcvfrtgbnhyuj"
>>> theString[-6:]
'bnhyuj'