[python] Python에서 줄 바꿈 구분 기호를 사용하여 문자열 분할

새 줄이있는 문자열을 구분해야합니다. 어떻게해야합니까? 아래 코드를 참조하십시오.

입력:

data = """a,b,c
d,e,f
g,h,i
j,k,l"""

원하는 출력 :

['a,b,c', 'd,e,f', 'g,h,i', 'j,k,l']

아래 접근 방식을 시도했습니다.

1. output = data.split('\n')
2. output = data.split('/n')
3. output = data.rstrip().split('\n')



답변

str.splitlines 방법은 당신에게 정확히 그것을 줄 것입니다.

>>> data = """a,b,c
... d,e,f
... g,h,i
... j,k,l"""
>>> data.splitlines()
['a,b,c', 'd,e,f', 'g,h,i', 'j,k,l']


답변

data = """a,b,c
d,e,f
g,h,i
j,k,l"""

print(data.split())       # ['a,b,c', 'd,e,f', 'g,h,i', 'j,k,l']

str.split, 기본적으로 모든 공백 문자로 분할됩니다. 실제 문자열에 다른 공백 문자가있는 경우 다음을 사용할 수 있습니다.

print(data.split("\n"))   # ['a,b,c', 'd,e,f', 'g,h,i', 'j,k,l']

또는 @Ashwini Chaudhary가 의견에서 제안했듯이 다음을 사용할 수 있습니다.

print(data.splitlines())


답변

개행으로 만 분할 하려면 splitlines () 를 사용하는 것이 좋습니다 .

예:

>>> data = """a,b,c
... d,e,f
... g,h,i
... j,k,l"""
>>> data
'a,b,c\nd,e,f\ng,h,i\nj,k,l'
>>> data.splitlines()
['a,b,c', 'd,e,f', 'g,h,i', 'j,k,l']

split () 사용하면 다음과 같이 작동합니다.

>>> data = """a,b,c
... d,e,f
... g,h,i
... j,k,l"""
>>> data
'a,b,c\nd,e,f\ng,h,i\nj,k,l'
>>> data.split()
['a,b,c', 'd,e,f', 'g,h,i', 'j,k,l']

하나:

>>> data = """
... a, eqw, qwe
... v, ewr, err
... """
>>> data
'\na, eqw, qwe\nv, ewr, err\n'
>>> data.split()
['a,', 'eqw,', 'qwe', 'v,', 'ewr,', 'err']


답변

이 목적을 위해 특별히 방법이 있습니다.

data.splitlines()
['a,b,c', 'd,e,f', 'g,h,i', 'j,k,l']


답변

여기 있습니다 :

>>> data = """a,b,c
d,e,f
g,h,i
j,k,l"""
>>> data.split()  # split automatically splits through \n and space
['a,b,c', 'd,e,f', 'g,h,i', 'j,k,l']
>>> 


답변