문자열 목록을 사용하려고하는데, 그 중 일부는 반복됩니다. 그러나 나는 필요한 수준의 문자열 중첩을 얻을 수없는 것 같습니다.파이썬 : 목록에 문자열이 여러 개 복사되었습니다.
저는 아직 파이썬에서 초보자입니다. 혼란 스럽습니다. 나는 this answer을 읽고 그것을 구현하려고 시도했지만, 어떻게 든 다른 유형의 목록과 다르게 행동하는 특수한 경우의 문자열 목록입니까?
나는 실행하는 경우 :
old_freestream_headings='area,MM static pressure,MM relative mach number,'
old_integral_headings='dp,Impulse:0,Impulse:1,Impulse:2,'
old_forces_headings=('pressure force vector:0,pressure force vector:1,pressure force vector:2,'
'viscous force vector:0,viscous force vector:1,viscous force vector:2,')
old_headings=[old_freestream_headings*2,old_integral_headings,old_forces_headings*5]
print(filter(None,old_headings[0].split(',')))
나는 결과로 얻을 :
첫 번째 문자열의 모두 사본입니다['area', 'MM static pressure', 'MM relative mach number', 'area', 'MM static pressure', 'MM relative mach number']
.
대신 경우에 나는 실행
old_freestream_headings='area,MM static pressure,MM relative mach number,'
old_integral_headings='dp,Impulse:0,Impulse:1,Impulse:2,'
old_forces_headings=('pressure force vector:0,pressure force vector:1,pressure force vector:2,'
'viscous force vector:0,viscous force vector:1,viscous force vector:2,')
old_headings=[[old_freestream_headings]*2,old_integral_headings,[old_forces_headings]*5]
print(filter(None,old_headings[0].split(',')))
나는 오류가 발생 :
AttributeError: 'list' object has no attribute 'split'
old_headings [0] 두 문자열 목록 지금처럼 나는 더 이상 문자열을 분할하고 있지 않다 때문이다. 내가 좀하고 싶습니다
출력은 문자열의 한 사본에 분할을 적용한다
['area', 'MM static pressure', 'MM relative mach number']
입니다.
내가 뭘 잘못하고 있니?
*하지만 어떻게 든 문자열의 목록을 다른 유형의 목록을 다르게 작동 특별한 경우? * 아니 –
'[old_freestream_headings]'이 당신이 포장된다 새 목록 안에있는 목록은 의도적 인 것입니까? –
왜'old_freestream_headings.split (',')'가 아닌가? 또는'old_headings [0] .split (",", 3) [0 : 3]'을 사용 하시겠습니까? –