Строка разделения Python

вы просите, чтобы:

strcpy(ptr, "red");
strcpy(ptr+10, "Blue");
strcpy(ptr+20, "Green");

после того, как вы несете ответственность, чтобы знать, где вы разместили строки

Может быть более практичным / общим, чтобы иметь только один нулевой символ между каждым и в хотя бы два нулевых символа после последнего?

Но, честно говоря, есть более практичные / безопасные решения, использующие std :: vector ...


Об ошибке «lvalue требуется в качестве левого операнда присваивания», она у вас есть для строк

ptr+10 = "Blue";
ptr+20 = "Green";

ptr+n не является lvalue , а является значением обычно это не переменная

13
задан kylie.a 20 May 2015 в 13:37
поделиться

4 ответа

>>> s = 'Zaptoit:685158:zaptoit@hotmail.com'
>>> s.split( ':', 1 )[1]
'685158:zaptoit@hotmail.com'
13
ответ дан 1 December 2019 в 21:25
поделиться

Другое решение:

s = 'Zaptoit:685158:zaptoit@hotmail.com'
s.split(':', 1)[1]
5
ответ дан 1 December 2019 в 21:25
поделиться

Другой метод, не используя разделение:

s = 'Zaptoit:685158:zaptoit@hotmail.com'
s[s.find(':')+1:]

Исключая:

>>> s = 'Zaptoit:685158:zaptoit@hotmail.com'
>>> s[s.find(':')+1:]
'685158:zaptoit@hotmail.com'
5
ответ дан 1 December 2019 в 21:25
поделиться
s = re.sub('^.*?:', '', s)
0
ответ дан 1 December 2019 в 21:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: