source

Python에서 문자열이 비어 있지 않은 경우 여러 개의 문자열에 가입

manycodes 2023. 11. 7. 21:00
반응형

Python에서 문자열이 비어 있지 않은 경우 여러 개의 문자열에 가입

저는 4개의 줄이 있는데 아무 줄이나 비어 있을 수 있습니다.저는 그들 사이에 공간을 두고 하나의 끈으로 묶어야 합니다.사용할 경우:

new_string = string1 + ' ' + string2 + ' ' + string3 + ' ' + string4

결과는 새 문자열의 시작 부분에 빈 공간이 됩니다.string1비어 있습니다.또한, 저는 3개의 빈칸이 있습니다.string2그리고.string3비어 있습니다.

필요 없을 때 빈칸 없이 어떻게 쉽게 가입할 수 있습니까?

>>> strings = ['foo','','bar','moo']
>>> ' '.join(filter(None, strings))
'foo bar moo'

사용함으로써None통화 중에 모든 거짓 요소를 제거합니다.

문자열에 선행/후행 공백이 없는 경우:

>>> strings = ['foo','','bar','moo']
>>> ' '.join(x for x in strings if x)
'foo bar moo'

그렇지 않은 경우:

>>> strings = ['foo ','',' bar', ' ', 'moo']
>>> ' '.join(x.strip() for x in strings if x.strip())
'foo bar moo'

문자열에 선두가 아닌 공백/trailing이 있는 경우에는 더 열심히 해야 할 수도 있습니다.당신이 실제로 가지고 있는 것이 무엇인지 명확히 해주세요.

strings = ['foo','','bar','moo']
' '.join([x for x in strings if x is not ''])
'foo bar moo'

언급URL : https://stackoverflow.com/questions/8626694/joining-multiple-strings-if-they-are-not-empty-in-python

반응형