for i in range(1,4):
a = x*number(y,i)
print(a)
print(list(a))
print (list(a))에서 아래와 같은 에러가 났다.
TypeError: 'int' object is not iterable
처음에 'iterable'이라는 말만 거슬려서 for i in range 만 뒤적뒤적,, 했는데 한 블로그에서 도움을 받았다!
블로그 글을 보고 블로그를 쓰는,,,창조경제인가
http://codingschool.info/rboard2/index.php?type=view&table=start_python&num=53
http://codingschool.info/rboard2/index.php?type=view&table=start_python&num=53
list() 함수는 인자로서 시퀀스(문자열, 튜플) 또는 집합(딕셔너리) 또는 iterable(반복할 수 있는) 개체(range())가 와야 합니다. 다음과 같은 형태로 사용해야 합니다. >>> tup = (1,2,3) >>>
codingschool.info
블로그의 글을 읽고 이해한 바는 다음과 같다.
list()는 ()안의 객체를 list라는 자료형으로 만들어 주는 함수이다.
난 234라는 정수형 변수를 [2,3,4] 라는 list로 만들고 싶어서 저런 생각없는 코딩을 해버렸다.....ㅋ
하지만 list함수는 파라미터로 올 수 있는 자료형이 한정되어 있었고, 문자열이나 튜플같이 반복되는, []나 () 안에 갇히는 자료형만이 가능했다. map 함수와 같은가,,
왜냐면 list()의 내부는 list([객체])이기 때문이다..!!
list(a)가 에러나자 number(리스트 자료형의 객체).append(a) 를 적용시켰더니 에러가 나지 않았다. 하지만 append 함수는 파라미터 자체를 number의 원소로 넣어주는 함수, [ , , ,a] 로 만들어주는 함수이기에 가능한 것이였다. 내가 원한 바로 [2,3,4]로 만들어주진 않았다.
234 를 [2,3,4]로 만들려면 %와 /를 이용해서 직접계산하거나, 234 -> "234" ->["2","3","4"] -> [2,3,4] 의 변환과정을 거쳐야 할 것같다. 실행 시간을 줄이려면 둘 중 뭐가 나을까?!
'걍 사는겨' 카테고리의 다른 글
2020 회고와 2021 다짐! (1) | 2021.01.02 |
---|---|
주말동안 코딩테스트 탈탈 털리고 너덜너덜해진 후기 + LG CNS 인적성 후기 (0) | 2020.09.14 |
‘외환 보유고’란?, 왜 외환 보유고가 필요한가? [경제원리 쉽게 이해하기] (0) | 2020.09.11 |
급하게 세시간 벼락치기하고 OPIC 시험 본 후기 (1) | 2020.04.14 |
취준생 현실을 받아들일때가 되었어,,, (0) | 2020.03.04 |