2016-06-12 11 views
-4

Ich habe einen Code, in dem die Variable strp enthält stringString manupulation in Python

strp = "HELLO WORLD . I AM NEW TO PYTHON" 

I-Ausgang als

HELLO WORLD nur zu bekommen, wenn print strp

welche Operation String-Manipulation durchgeführt werden soll um das zu erreichen?

Ich verwende Python 2.7

+0

'Druck strp' druckt nur den Inhalt von' strp'. Sie müssen nur "strp" ändern, um den Inhalt zu erhalten, den Sie drucken möchten. – danielunderwood

+0

Welche String-Operationen kommen Ihnen in den Sinn, wenn Sie nur einen Teil einer Zeichenkette haben wollen? Versuchen Sie diese zu erforschen und experimentieren Sie bitte mit sich selbst. –

Antwort

1

Dies?

print strp.split('.')[0] 

split auf die Zeichensetzung und bekommen das erste Element

0

Sie können nicht, weil Druck strp den Inhalt von strp drucken. Sie können nur einen Teil der Variablen drucken, z. B. mit

1

split Verwendung:

strp.split(' . ')[0] 
Out[51]: 'HELLO WORLD' 

Direkt Indizieren:

strp[:11] 
Out[52]: 'HELLO WORLD' 

Oder mit re:

import re 
re.split('[.\s]\s*', strp) 
Out[55]: ['HELLO', 'WORLD', '', 'I', 'AM', 'NEW', 'TO', 'PYTHON'] 
' '.join(re.split('\s*[.\s]\s*', strp)[0:2]) 
Out[58]: 'HELLO WORLD' 
1

Zuerst lokalisieren . in strp und dann die Teil von strp, bevor es drucken:

strp = "HELLO WORLD . I AM NEW TO PYTHON" 

period_location = strp.find(".") 
print(strp[:period_location])