전체 글 182

[코딩도장-파이썬] 2차원 리스트 사용하기 1

1. 2차원 리스트 생성하기 이전까지 사용했던 1차원 리스트가 아닌 2차원의 리스트를 생성하는 방법입니다. 리스트 = [[값, 값], [값, 값], [값, 값]] a = [[10, 20], [30, 40], [50, 60]] print(a) [[10, 20], [30, 40], [50, 60]] 2. 2차원 리스트의 요소에 접근하기 2차원 리스트의 요소에 접근하거나 값을 할당할 때는 리스트 뒤에 [ ](대괄호)를 두 번 사용하며 [ ] 안에 세로(row) 인덱스와 가로(column) 인덱스를 지정해주면 됩니다. 리스트[세로인덱스][가로인덱스] 리스트[세로인덱스][가로인덱스] = 값 a = [[10, 20], [30, 40], [50, 60]] print(a[0][0]) # 세로 인덱스 0, 가로 인덱스 ..

Programming/Python 2020.11.20

[코딩도장-파이썬] 리스트(List)와 튜플(Tuple) 응용하기 3

*shell 환경이 아닌 스크립트(script) 환경에서 작업했기 때문에 print 함수로 출력했습니다. shell 환경이라면 print 함수는 생략 가능합니다. 1. 리스트 컴프리헨션(list comprehension) : 리스트 안에 식, for 반복문, if 조건문 등을 지정하여 리스트를 생성하는것. 리스트 안에 for 반복문과 if 조건문을 사용할 수 있다는 점은 파이썬의 특징. [식 for 변수 in 리스트] list(식 for 변수 in 리스트) a = [i for i in range(10)] # 0부터 9까지 숫자를 생성하여 리스트 생성 print(a) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] b = list(i for i in range(10)) # 0부터 9까지 숫자를 생성..

Programming/Python 2020.11.19

[코딩도장-파이썬] 리스트(List)와 튜플(Tuple) 응용하기 2

*shell 환경이 아닌 스크립트(script) 환경에서 작업했기 때문에 print 함수로 출력했습니다. shell 환경이라면 print 함수는 생략 가능합니다. 1. 할당과 복사 a = [0, 0, 0, 0, 0] b = a print(b) print(a) [0, 0, 0, 0, 0] [0, 0, 0, 0, 0] 보기에 b=a와 같이 리스트를 다른 변수에 할당하면 리스트는 두 개가 될 것 같지만 실제로는 한 개의 리스트입니다. print(a is b) 와 같이 is 연산자로 비교해보면 True가 출력이 되는데, 이는 변수 이름만 다른 것이지 a와 b는 같은 객체라는 의미입니다. b[2] = 99 print(a) [0, 0, 99, 0, 0] a와 b는 같으므로 b[2] = 99와 같이 리스트 b의 요소..

Programming/Python 2020.11.19

[코딩도장-파이썬] 리스트(List)와 튜플(Tuple) 응용하기 1

리스트와 튜플 응용에 앞서 리스트와 튜플에 대한 기초 지식을 아래 링크에 정리했습니다. 이번 공부를 하시기에 앞서 참고하시면 좋을 것 같습니다. supreme-ys.tistory.com/35 [코딩도장-파이썬] 리스트(List) ._리스트 : 목록이라는 뜻이며 값을 일렬로 늘어놓은 형태이다.(보통 리스트의 값은 코드로 생성하는 경우가 많기 때문에 타이핑 할 일이 거의 없다. ._리스트 만들기 : 변수에 값을 저장할 때 [ ] supreme-ys.tistory.com supreme-ys.tistory.com/36 [코딩도장-파이썬] 튜플(Tuple) ._튜플 = (값, 값, 값) 튜플 = 값, 값, 값 튜플은 리스트처럼 요소를 일렬로 저장하지만, 안에 저장된 요소를 변경, 추가, 삭제를 할 수 없다. 간단..

Programming/Python 2020.11.18

[코딩도장-파이썬] 터틀 그래픽스

script 모드에서 코드를 좌라락 쓰고 돌려보면 AttributeError가 발생할 때가 있습니다. 그 이유는 스크립트 명이 호출할 모듈명과 같아서 생기는 문제입니다. 저 또한 turtle.py로 저장하고 shell 상에서 작업하고 있었는데 script 모드에서 자꾸 AttributeError가 발생하길래 구글링해서 찾았습니다. 즉, 호출한 모듈명과 파일명이 같으면 안된다는 것! 즉, turtle 이라는 모듈을 호출하고 있는데 파일명이 turtle.py 라서 conflict 가 발생하는 것입니다. 정확히 왜 충돌이 발생하는지는 모르겠지만.. 참고하시길 바랍니다. ● 터틀 그래픽스(Turtle graphics) 모듈을 사용해서 간단한 그림그리기. 터틀은 어린이 및 초보자가 파이썬을 쉽게 배울 수 있도록 ..

Programming/Python 2020.11.17

[코딩도장-파이썬] 중첩 루프

● 중첩 루프를 사용하여 아래와 같은 계단식 *(별, 아스테리스크)를 출력하기 * ** *** **** ***** 다음과 같이 반복문 안에 반복문이 들어가는 형태를 중첩 루프(다중 루프)라고 한다. 그리고 반복문의 루프 인덱스 변수는 index의 첫 글자를 따서 i를 사용하는데, 반복문 안에 반복문이 들어갈 때는 변수 이름을 i, j, k처럼 i부터 알파벳 순서대로 짓는다. 여기서는 반복문이 두 개이므로 i와 j를 사용한다.(변수 이름을 i와 j로 짓는 것은 강제된 사항은 아니지만 오래 전부터 관례적으로 사용하고 있다.) 예 결과값 for i in range(5): # 5번 반복, 바깥쪽 루프는 세로방향 for j in range(5): # 5번 반복, 안쪽 루프는 가로 방향 print('j:', j, ..

Programming/Python 2020.11.16

[코딩도장-파이썬] break, continue 를 통한 반복문 제어

● break는 for와 while 문법에서 제어흐름을 벗어나기 위해 사용한다. 즉, 루프를 완전히 중단. continue는 break와 비슷하지만 약간 다른 점이 있다. break는 제어흐름을 중단하고 빠져 나오지만, continue는 제어흐름(반복)을 유지한 상태에서 코드의 실행만 건너뛰는 역할을 한다. 마치 카드 게임을 할 때 패가 안 좋으면 판을 포기하고 다음 기회를 노리는 것과 비슷 break: 제어흐름 중단 continue: 제어흐름 유지, 코드 실행만 건너뜀 예 예 결과값 i = 0 while True: # 무한루프 print(i) i += 1 # i값 1씩 증가 if i == 10: # i가 10일 때 break # 반복문을 끝냄, while 제어흐름을 벗어남 for i in range(1..

Programming/Python 2020.11.15

[코딩도장-파이썬] while 반복문

● while 반복문은 조건식으로만 동작하며 반복할 코드 안에 조건식에 영향을 주는 변화식이 들어간다. 다음은 while 반복문의 실행 과정이다. 먼저 초기식부터 시작하여 조건식을 판별한다. 이때 조건식이 참(True)이면 반복할 코드와 변화식을 함께 수행한다. 그리고 다시 조건식을 판별하여 참(True)이면 코드를 계속 반복하고, 거짓(False)이면 반복문을 끝낸 뒤 다음 코드를 실행한다. i = 0 #초기식 while i 0 : print('Hello, Python', i) i -= 1 count = int(input('반복할 횟수를 입력하세요 : ')) i = 0 while i 0 : print('Hello, Supreme', count) count -= 1 ●지금까지 조건식에서 반복 횟수를 정한..

Programming/Python 2020.11.15

[코딩도장-파이썬] for 반복문

● for 반복문은 range에 반복할 횟수를 지정하고 앞에 in과 변수를 입력한다. 그리고 끝에 :(콜론)을 붙인 뒤 다음 줄에 반복할 코드를 넣는다. for 변수 in range(횟수) → 반복할 코드로 순환하는 것을 루프(loop)라고 부른다. 반복문의 변수 i 변수 i를 루프 인덱스라고도 부르며 index의 첫 머리글자를 따서 i를 주로 사용 형태 예 for 변수 in range(횟수): 반복할 코드 >>> for i in range(100): print('hello, world!') ● 파이썬 2.7과 파이썬 3에서 range는 결과가 조금 다르다. 파이썬 2.7에서는 range를 사용하면 실제로 연속된 숫자가 들어있는 리스트를 만들어내지만 파이썬 3에서는 range 객체(반복 가능한 객체)를 ..

Programming/Python 2020.11.14

[코딩도장-파이썬] elif를 사용하여 여러 방향으로 분기하기

●else + if = elif 즉, elif는 조건식을 여러 개 지정하여 각 조건 마다 다른 코드를 실행할 수 있다. if, else와 마찬가지로 조건식 끝에 : (콜론)을 붙여야 하고, elif 단독으로 사용할 수 없다. 형태 예 if 조건식 : 코드1 elif 조건식 : 코드2 x = 20 if x == 10: print('10 입니다.') elif x == 20: print('20 입니다.') 위의 예시에서 만일 x가 10도 아니고 20도 아니면 if, else 형태로 사용하거나, 아래처럼 if, elif, else 형태로 사용하면 된다. 형태 예 if 조건식: 코드1 elif 조건식: 코드2 else: 코드3 x = 30 if x == 10: print('10 입니다.') elif x == 20..

Programming/Python 2020.11.13