2014-12-02 2 views
-3

각 줄 끝의 공백을 제거하고 싶습니다.공백 제거

w = input("Words: ") 
w = w.split() 
k = 1 
length = [] 
for ws in w: 
    length.append(len(ws)) 
    y = sorted(length) 
while k <= y[-1]: 
    if k in length: 
    for ws in w: 
     if len(ws) != k: 
     continue 
     else: 
     print(ws, end=" ") 
    print("") 
    k += 1 

나가는 것은 예를 들어 타이프를 입력하면 길이 평가시 단어 줄을 제공합니다. I do QI love

그러나 각 줄의 끝에는 공백이 있습니다. .rstrip()을 시도하면 단어 사이의 공백이 삭제되고 가져옵니다. I DOQI 사랑 사용해야하는

+3

string.rstrip을 ((당신은 문자열이 아닌 목록을 작성해야합니다). –

+0

중복 된 http://stackoverflow.com/questions/2372573/how-do-i-remove-whitespace-from-the-end-of-a-string-in-python –

+0

^아니요. OP 아래의 코멘트를 기반으로 "나는 이것을 시도했지만 줄에 나열된 단어 사이의 공간을 잃고 계속." 나는 이것이 http://stackoverflow.com/questions/3739909/how-to-strip-all-whitespace-from-string의 중복이라고 생각한다. – Sriram

답변

2

사용 "".join (WS) 대신하고 자동 것이다 있지만 당신을 위해 일하는 것이)

+0

이것은 고맙습니다! – user3864194

0

rstrip
데모 :

>>> 'hello '.rstrip() 
'hello' 

rstrip

lstrip에서 공백을 제거 왼쪽에서 공백을 제거합니다

>>> ' hello '.lstrip() 
'hello ' 

strip 모두 끝에서 제거하는 동안 :

>>> ' hello '.strip() 
'hello' 

당신은 당신은 re 모듈의 사용 re.sub를 사용

>>> "hello,how,are,you".split(',') # if ',' is the delimiter 
['hello', 'how', 'are', 'you'] 
>>> "hello how are you".split()  # if whitespace is delimiter 
['hello', 'how', 'are', 'you'] 
+0

나는 이것을 시험해 보았지만 위에 열거 된 단어들 사이의 공간을 잃어 버린다. 선. – user3864194

+0

나는 그것이 열거하기를 원한다 - 나, 제나라, 사랑하고 언제 내가 그것을 읽을 때 나는 그것을 읽는다. doqi, love – user3864194

+0

당신은 당신의 입력과 예상 결과가 무엇인지를 보여줄 수 있는가? – Hackaholic

0
re.sub(r"[ ]*$","",x) 

을 나열으로 변환 분할을 사용해야합니다. 같은 줄에

+0

당신은 _could_하지만 내장 된 str 메소드가 처리 할 수있는 문제에 대해 regex를 사용해야하는 이유는 무엇입니까? –

+0

몇 가지 독서를하는 것으로부터 나는 이것이 효과가있을 것이라고 생각하지만, 내 코드의 문맥에 어디에 넣을 지 모르겠다. – user3864194

+0

@ user3864194 x는 패스 한 줄입니다. 그냥 루프에 넣고 lines.return 값을 줄 끝까지 공백없이 줄 것입니다 – vks