본문 바로가기

프로그래밍 언어/Python24

문자열 뒤집기 - 문자열 슬라이싱 문자열 슬라이싱(Slincing)? char[start:end:step] start와 end의 생략이 가능하다. start를 생략하면 맨 처음이라는 뜻이다. end를 생략하면 맨 끝이라는 뜻이다. step은 1일 때 생략이 가능 range(start, end, step)과 비슷 start의 생략 char = 'Life is too short, You need Python' print(char[:4]) # print(char[0:4])로 쓸 수도 있다. # 실행결과 Life line 2의 char[:4]는 char에서 맨 처음부터 3까지의 문자열을 추출하라는 뜻이다. char[0] = L char[1] = i char[2] = f char[3] = e char[0:4] = Life end의 생략 char .. 2020. 5. 8.
int형 list를 .join으로 꺼내기 int형으로 구성된 list를 .join하려고하면 아래와 같은 에러가 발생한다. number = [0, 1, 2, 3, 4, 5] print(" ".join(number)) # 실행결과 예외가 발생했습니다. TypeError sequence item 0: expected str instance, int found File "G:\test.py", line 2, in print(" ".join(number)) 이를 해결하려면 str형으로 바꿔줘야하는데 map()을 사용하면 쉽게 해결할 수 있다. number = [0, 1, 2, 3, 4, 5] print(" ".join(map(str, number))) # 실행결과 0 1 2 3 4 5 2020. 5. 5.
변수 _, *x (map을 list로 만드는 방법에 대해) _ 값을 무시함 파이썬 인터프리터에선 마지막으로 실행된 결과값이 저장됨 (인터프리터에 사용하는 경우) # _ 예제 x, _, y = 1, 2, 3 print(f"x : {x}") print(f"y : {y}") # 실행결과 x : 1 y : 3 *_ 여러개의 값을 무시하고 받음 # *_ 예제 x, *_, y = 1, 2, 3, 4, 5 print(f"x : {x}") print(f"y : {y}") # 실행결과 x : 1 y : 5 _, *x 여러개의 값을 한번에 받아옴. list로 반환 # 응용 import sys _, *x = map(int, sys.stdin.readline().split()) print(type(x)) print(x) print(f"{min(x)}\n{max(x)}") # 실행결과.. 2020. 4. 29.
sorted() - 숫자를 오름차순으로 정렬 a = [3, 64, 77, 42, 59] print(sorted(a)) # 실행결과 [3, 42, 59, 64, 77] 오름차순으로 정렬한다음 두번째 큰 수를 구하기 a = [3, 64, 77, 42, 59] print(sorted(a)[-2]) # 실행결과 64 # readline().split()으로 값 입력 받은 후 두번째 큰 숫자 찾기 import sys print(f"두번째 큰 숫자 : {sorted(map(int, sys.stdin.readline().split()))[-2]}") # 실행결과 20 30 10 두번째 큰 숫자 : 20 2020. 4. 28.