파이썬 코드 질문드려요(기초질문)
조회수 437회
num1 = '적지를 눈앞에 둔 공격군이 상부의 명령없이 마음대로 회군한다는 것은 명백한 반역행위이다. "우리를 버려두고 당신만 가면 남아 있는 사람들은 어떡하냐"는 것이었다.'
num2 = '그러나 우왕과 최영은 막다른 골목으로 몰린 이성계가 선택할 수 있는 또 다른 가능성을 무시했다.'
num3 = '4불가론을 내세우며 위화도 회군을 감행한 이성계의 허물은 이로써 만회될 수 있었다.'
이렇게 되어 있는 텍스트를
print(num1.split())
# ['적지를', '눈앞에', '둔', '공격군이', '상부의', '명령없이', '마음대로', '회군한다는', '것은', '명백한', '반역행위이다.', '"우리를', '버려두고', '당신만', '가면', '남아', '있는', '사람들은', '어떡하냐"는', '것이었다.']
이렇게 num1
외에도 다른 텍스트들도 split()
하고 싶습니다.
for i in range(1, 4):
num = 'num{}'.format(i)
print(num.split())
근데 이렇게 하면
['num1']
['num2']
['num3']
이렇게 됩니다.. 어떻게 해결해야 할까요?
1 답변
-
저라면 지금이라도 과감하게 회군해서 데이터 구조 및 전략을 변경하겠습니다.
nums = [ '적지를 눈앞에 둔 공격군이 상부의 명령없이 마음대로 회군한다는 것은 명백한 반역행위이다. "우리를 버려두고 당신만 가면 남아 있는 사람들은 어떡하냐"는 것이었다.', '그러나 우왕과 최영은 막다른 골목으로 몰린 이성계가 선택할 수 있는 또 다른 가능성을 무시했다.', '4불가론을 내세우며 위화도 회군을 감행한 이성계의 허물은 이로써 만회될 수 있었다.' ] # 핵심은 num1, num2 같은 별도의 변수에 각 대상 문자열을 꽂지 말고 목록을 사용하자는 것입니다. # 대부분 언어가 그렇지만 특히 파이썬에서는 변수명을 동적으로 얻거나 지정하는 것이 별로 좋은 아이디어가 못됩니다. # 이 목록에서 세 번째 문자열을 찾으려면: print(nums[2]) # 별도의 문자열을 추가하려면: nums.append("이성계가 역사의 전면에 나서면서 최영은 몰락해 갔다.") # 이 목록 전체에 대해서 작업을 하려면: for num in nums : print(num.split()) # 참 쉽죠?
댓글 입력