분류 전체보기

    [파이썬 문법] 정렬

    sort() - 리스트 자료형에서 제공하는 메소드다. - 반환 값이 None이다. 원 리스트 자체를 제자리 정렬 In-place Sort 한다. sorted() - 정렬 결과를 반환한다. b = 'zbdaf' sorted(b) --- ['a', 'b', 'd', 'f', 'z'] - join()을 이용해 다시 문자열로 결합할 수 있다 b = 'zdbaf' "".join(sorted(b)) --- 'abdfz' - key= 옵션을 지정해 정렬을 위한 키 또는 함수를 지정할 수 있다. (sort()도 가능) # 길이를 구하는 len함수로 정렬 c = ['ccc', 'aaaa', 'd', 'bb'] sorted(c, key=len) --- ['d', 'bb', 'ccc', 'aaaa'] - 첫 문자열을 첫번째..

    [파이썬 문법] 정규 표현식 - 문자열 바꾸기, 불필요한 문자열 삭제

    import re re.sub('패턴', '바꿀문자열', '문자열', 바꿀횟수) 문자열 s에서 소문자 알파벳과 0-9 사이 숫자가 아닌 것은 모두 삭제하기 s = re.sub('[^a-z0-9]', '' , s) 더 다양한 패턴은 아래 글에서 보실 수 있습니다. 더보기 2021.06.14 - [Language] - 정규표현식 Regex 정리 by 엘리

    [파이썬 문법] 딕셔너리 (dictionary) 생성, 추가, 리스트를 딕셔너리로 변환, 조회

    생성, 추가 딕셔너리(dictionary)는 다음과 같은 방법으로 선언할 수 있다. a = dict() # or a = {}key와 value가 추가된 채로 생성할수도 있다. a = {'key1':'value1', 'key2':'value2'}별도로 value3이란 값을 추가할 수 있다. a['key3'] = 'value3'리스트를 딕셔너리로 변환 딕셔너리에 key값과 value값을 추가한다. 리스트의 원소를 key로 추가했다. alpha = ['a', 'b', 'c'] a = {} for letter in alpha: a[letter] = 0 print(a) --- # out..

    [파이썬 문법] print 출력

    - print() 함수는 항상 줄바꿈을 한다. - end 파라미터를 공백으로 처리하면 줄바꿈을 하지 않는다. print('A', end=' ') print('B') ----- # 결과 A B - 콤마(,)로 구분할 경우 한 칸 공백이 기본값이다. - sep 파라미터로 구분자를 지정해줄 수 있다. print('A', 'B', sep=',') ----- # 결과 A,B - 리스트를 출력할 때 a = ['A', 'B'] print(' '.join(a)) ----- # 결과 A B - .format 을 부여하는 방식 idx = 1 fruit = "Apple" print('{0}: {1}'.format(idx + 1, fruit)) print('{}: {}'.format(idx + 1, fruit)) ----- ..

    [코드업] 6098번 파이썬 (Python) 풀이

    문제 (출처: https://codeup.kr/problem.php?id=6098) 풀이 - 마지막 문제라 그런지 제일 오래 걸렸다. - (2, 2)에서 시작 -> 오른쪽에 1이 없는 한 계속 오른쪽으로 이동한다 (여기에서 조건 하나 누락) - 오른쪽에 1이 있다면 아래로 이동한다 - 현재 있는 자리는 9로 바꾼다 - 2를 만나면 9로 바꾼 후 출력한다 - 인덱스는 0부터라 x, y 가 (1, 1)이다. - 시간 초과가 나서 input()과 print()와 while(1) 등의 문제인줄 알고 열심히 바꾸었다. - 진행 중에 아래에 2가 있는 경우는 예외처리가 되었는데, 진행 중에 오른쪽에 2가 있는 경우가 빠졌다. - 오른쪽과 아래쪽이 모두 1인 경우를 따로 예외처리했는데, 그럴 필요 없이 while의 ..

    [코드업] 6097번 파이썬 (Python) 풀이

    문제 (출처: https://codeup.kr/problem.php?id=6097) 풀이 - 가로, 세로라는 표현이 행과 열보다 잘 와닿지 않아 헤맸다. - 컴파일이 되지 않아 에러를 찾으려고 try-except문을 사용했다. a = [[0] * w for _ in range (h)] - 위 코드는 0으로 초기화된 원소 * w 를 h번 반복해서 2차원 리스트 a를 만드는 것! - 2차원 리스트가 잘 만들어지지 않는다면 가로, 세로 표현에 헷갈렸을 수 있으니 변수를 바꾸어 넣어서 만들어볼 것 - d의 값이 0이면 가로 방향 (y에 더해야) 으로 놓여야 하고, 1이면 세로 방향 (x에 더해야) 으로 놓여야 한다. - x와 y에 계속 -1 해준 것은 인덱스가 0부터 시작하기 때문이다.

    [코드업] 6096번 파이썬 (Python) 풀이

    문제 (출처: https://codeup.kr/problem.php?id=6096)) 풀이 - 아래 설명을 따라가며 한 줄씩 작성했다. 십자 뒤집기는 그 위치에 있는 모든 가로줄 돌의 색을 반대(1->0, 0->1)로 바꾼 후, 다시 그 위치에 있는 모든 세로줄 돌의 색을 반대로 바꾸는 것이다. 어떤 위치를 골라 집자 뒤집기를 하면, 그 위치를 제외한 가로줄과 세로줄의 색이 모두 반대로 바뀐다.