본문 바로가기

python3/문법5

[python 문법] 리스트 쪼개기 및 for문을 이용한 combinations 백준 문제를 풀다가, 리스트를 내가 원하는 갯수대로 쪼개는 방법을 알고 싶어 이것저것 해봤습니다. 1. for문과 append로 만들기 arr = [1, 2, 3, 4, 5, 6] n = 2 div_li = [] for i in range(0, len(arr), n) : div_li.append(arr[i:i+n]) print(div_li) ''' (출력) [[1, 2], [3, 4], [5, 6]] ''' 2. def 함수에서 yield로 만들기 arr = [1, 2, 3, 4, 5, 6] def div_li(l, n) : for i in range(0, len(l), n) : yield l[i:i+n] n = 2 result = list(div_li(arr, n)) print(result) '''(출.. 2022. 1. 16.
[Python 문법] Python 기초 문법 1) Python 1. 특징 쉽다 많은 사람들이 사용한다 많은 것을 할 수 있다 2. 무조건 최신 버전만 설치하지 않는 이유 LTS(Long Term Support) 장기 지원 버전 일반적인 경우보다 장기간에 걸쳐 지원하도록 특별히 고안된 소프트웨어의 버전, 에디션 안정성 측면에서 검증된 버전을 사용하기 위함 + 유지보수 기간 연장 3. Visual Studio Code와 굳이 연동하는 이유 좀 더 가벼움 다양한 언어의 내용 제공 하이라이팅 기능 (색 바뀌는 기능) 제공 오픈소스 기능도 활발하게 되어 있음 4. 주의사항 대 / 소문자 띄어쓰기 스펠링 2) Python 문법 1. 저장 save의 개념보다는, 박스에 이름을 붙이고 어떤 값을 담는다 라고 생각 ex) dust = 60 : dust = 60이다.. 2022. 1. 15.
[python문법] int를 str로 바꿔서 출력하기 1. 한 줄 씩 쪼개서 출력하기 a = list(range(1,11)) for i in range(a) : # 일단 a에 저장된 값 하나씩 다 돌면서 보기 for j in str(a[i]) : a의 [i]번 값을 문자(str)로 출력 print(j) ''' 결과 1 2 3 4 5 6 7 9 1 # 10 이 1과 0으로 나눠서 출력됨 0 ''' 2. 리스트 그대로 출력해보기 a = list(range(1,11)) b = str(a) print(b[0]) ''' 결과 # 1이 나올 거라고 생각했는데 [ # a 리스트의 대괄호가 출력됨 ''' 3. 입력 받은 숫자를 문자로 쪼개서 더하기 (예시 : 75 = 7 + 5 = 12로 출력하기) def 함수로 만들어서 푼 문제 링크 백준_4673_셀프넘버 [백준/py.. 2022. 1. 15.
[python문법] input() vs sys.stdin 1. input() 파이썬 내장 함수 input -> 개행 문자 벗기고 -> 문자열로 변환 -> return 2. sys.stdin file object 입력 -> buffer에 저장 -> 읽기 : buffer에 저장하고 읽기만 하기 때문에 시간 감소함 * 입력 속도 비교 1. for line in sys.stdin nums = [] for line in sys.stdin : nums.append(line) print(nums) 숫자 한 줄씩 입력 / 결과 1 2 3 ...(중략) ['1\n', '2\n', '3\n'] ## 개행문자 함께 출력됨 # 참고 -- rstirp으로 개행문자 제거 nums = [] for line in sys.stdin : nums.append(line.rstirp()) ## .. 2022. 1. 13.
[python문법] def 함수 값 여러 개 return하기 def ABC(a, b) : return a + b, a - b 로 지정했을 때, x, y = ABC(10, 20) print(x, y) 입력 시 30 -10 출력 print(x) 30 (결과) print(y) -10 (결과) x = ABC(10, 20) print(x) 입력 시 (30, -10) 튜플로 출력됨! 2022. 1. 13.