python中字符串的操作

时间:2015-01-15 14:27:03

标签: python

目前我正在学习Python3,我已经有了一些C语言的经验。 我需要移动字符串以摆脱两个第一个字节。这是C中的代码:

char *a = "Hello World";
a += 2;
printf ("%s", a)

这个程序将输出“llo World”

我想知道是否有办法在Python中有效地执行此类操作,而无需复制整个字符串。

4 个答案:

答案 0 :(得分:4)

2.x中最接近的操作是从字符串创建buffer然后切片。创建buffer是一项额外的操作,但只需要执行一次,因为buffer可以重复使用。

>>> a = 'Hello world'
>>> b = buffer(a)
>>> print b[2:]
llo world
>>> print b[:5]
Hello

3.x没有buffer,但你不应该试图用Python模拟C代码。弄清楚你实际上要做什么,然后为它编写适当的Pythonic代码。

答案 1 :(得分:3)

Python比C更高级,并且理解字符串是什么。你可以这样做:

s = "Hello World"
print(s[2:])

您可以在此处找到更多信息:https://docs.python.org/3/tutorial/introduction.html#strings

答案 2 :(得分:2)

确实存在并且优于C

a = "Hello World"
print a[2:]

这称为切片

参考图片

enter image description here

答案 3 :(得分:0)

仅供参考:您不需要声明任何变量,您可以直接对字符串进行操作

"Hello world"[2:] # llo world