전체 글 708

파이썬 입력 속도 빠르게 하기

1. input() 보다 sys.stdin.readline()을 이용한다 sys.stdin.readline() 이 속도가 빠르다. 하지만 \n까지 같이 입력받는다. 따라서 sys.stdin.readline().rstrip() 를 써서 개행을 제거하고 입력받는다. ​ ex) import sys # 개행까지 함께 입력 a=sys.stdin.readline() print(a,"end") # 개행제외 함께 입력 b=sys.stdin.readline().rstrip() print(b,"end") 더보기 input input end input input end *c++은? https://blog.naver.com/ngoodsamari/221785816475 c++ 입출력 속도 빠르게하기 1. cin cout 입출력..

파이썬 진수변환 (10진수를 n진수로, n진수를 10진수로)

진수를 변환하는 방법은 다음과 같다 10진수를 n(2,8,16)진수로 바꾸는방법 10진수 x를 2진수로 바꾸려면 bin(x) , 10진수 x를 8진수로 바꾸려면 oct(x) 10진수 x를 16진수로 바꾸려면 hex(x) print(bin(11)) print(oct(11)) print(hex(11)) 타입은 모두 스트링 0b1011 (2진법은 앞에 0b가 붙는다) 0o13 (8진법은 앞에 0o가 붙는다) 0xb (16진법은 앞에 0x가 붙는다) * 2,8,16 진수가 아닌 다른 진수로 바꾸고 싶으면 다음 함수를 이용한다. def convert(n, base): ''' n: base진수로 바꿀 10진수 base : 진수 ''' q, r = divmod(n, base) if q == 0: return str(..

aliasing시 요소 수정과 재정의의 차이

리스트를 aliasing(b=t)했을 때 1. 리스트 자체를 재정의 하면 수정이 적용되지 않지만 2. 요소를 수정하면 수정이 적용된다 print("[리스트를 재정의]") b=[] t=[1,2,3] b=t print("전") print(b) t=[5,6,7] print("후") print(b) print() print("리스트 요소 수정") b=[] t=[1,2,3] b=t print("전") print(b) t[0]=5 t[1]=6 t[2]=7 print("후") print(b) 더보기 [리스트를 재정의] 전 [1, 2, 3] 후 [1, 2, 3] 리스트 요소 수정 전 [1, 2, 3] 후 [5, 6, 7]

함수의 시간을 측정하는 함수, 시간관련 함수

# fuc에 측정대상 함수를 넣는다 def whatTime(fuc,var): import time t1=time.perf_counter() fuc(var) t2=time.perf_counter() return t2-t1 오늘날짜 ( from datetime import datetime ) , 실행시간 측정(import time) datetime.today() 현재 날짜 datetime.today().year 현재 연도 datetime.today().month 현재 월 datetime.today().day 현재 일 datetime.today().hour 현재 시간 datetime.today().strftime("%Y%m%d%H%M%S") yyyymmddhhmmss 형태로 출력 datetime.today()..

문자열 함수

"string".zfill(width) 앞에 0을 채워서 스트링의 길이 width로 맞춤 "string".rjust(width,"c") c를 앞에 채워 스트링의 길이를 width에 맞춤 s.isalpha() 영문자인지 확인, 영문자면 true 리턴 chr(num) num번째 아스키코드 리턴 ord("string") string의 아스키코드 리턴 s.lower() 문자를 모두 소문자로 s.upper() 문자를 모두 대문자로 s.isalpha() 영문자인지 확인, 영문자면 true 리턴 s.replace("찾을값","바꿀값","바꿀횟수") 앞에서 부터 "찾을값"을 "바꿀값"으로 "바꿀횟수"만큼 바꿈. "바꿀횟수"를 주지않으면 모든 문자열에있는 "찾을값"을 다 바꿈

if __name__ == "__main__" 을 쓰는 이유

0. if __name__ 함수를 쓰는이유 파이썬에서 메인함수를 쓸때와 쓰지않을때의 차이는 해당 프로그램을 import했을 때 실행여부이다. 1. 메인함수를 작성하면, 해당 프로그램을 import했을 때 main() 내부에 있는 코드가 실행되지 않지만, 2. 메인함수를 작성하지 않으면, import했을 때 전역에 있는 모든 코드들이 실행된다. 1. 메인함수 작성 useMain.py def add(a,b): return a+b def sub(a,b): return a-b if __name__ == "__main__": print(add(1,4)) print(sub(4,1)) 1. useMain을 import시 아무결과값도 뜨지 않는다. import useMain Process finished with ex..

reverse와 reversed

1. reverse() : 리스트형태에 사용가능 (string에서 사용 불가능) ex) L.reverse()하면 L이 역순으로 정렬됨. ​ ​ 2. reversed(a): 리스트 및 문자에 사용가능 (return이 reversed형태이므로(입력값이 문자든 리스트든) list나 set등 iterator형식으로 바꿔야함) (문자를 입력값으로 넣어도 자동으로 list형식으로 바꿔주는 sorted()함수와는 다름) ex) list(reversed(word)) or set(reversed(myL))