프로그래밍/파이썬🐍 19

[Python]입력속도 향상 방법(readline)

대량의 입력을 받을 때 입력속도를 빠르게 하기위해서는 import sys input = sys.stdin.readline 위 코드처럼 해주면 된다. input을 평소와 같이 사용하면서 입력속도를 높일수있다. 다만 문자열을 읽을 때 개행문자까지 읽어오는 문제가 있다. 문자열을 입력할 때는 rstip()함수를 붙여주어 개행문자를 없애줘야 원하던 입력이 된다. s = input().rstrip()

[Python] 파이썬 출력방법(like..%d %s)

print("#%d %s" %(i+1 ,'YES' if isTrue==True else 'NO')) # isTrue가 맞으면 YES출력, 아니면 NO출력 파이썬의 출력은 그저 간단히 print(값) 으로 알고있었다. 이렇게 형식으로 출력하는 방법을 모르고있었고 강의를 들으며 새롭게 알게되어서 포스팅 해본다. (아마 이전에 읽었는데 잊어먹은거겠지만) c언어와 같이 %d, %s 로 형식을 지정한다. 그리고 뒤에 ' , '는 넣지않고 %와 괄호를 이용해 %d, %s에 넣을 값을 지정한다. print("%d" %(5)) 5 예를 들어 파이선 알고리즘 문제풀이 - 섹션 2 _ 회문 문자열 검사에서 n = int(input()) for i in range(n) : Origin = input() Origin = Or..

(6)처음시작하는파이썬_[6장 객체와 클래스]

클래스는 박스를 만드는 틀, 객체는 플라스틱 박스로 비유할 수 있다. 객체는 어제쓰나?? 비슷한 행동(메서드)을 하지만 내부상태(속성)이 다른 개별 인스턴스가 필요할 때, 객체는 유용하다. string은 'cat', 'duck'과 같은 문자열 객체를 만들도록 내장되어있는 클래이다. 이러한 커스텀 객체들을 생성하기 위해 class 키워드를 이용해 클래스를 정의한다. class person() : pass someone = person() person()은 person 클래스로부터 객체를 생성한 후 someone변수에 이 객체를 할당한다. 파이썬 객체 초기화 메서드 __init__이 있다. 이는 클래스의 정의로부터 객체를 초기화한다. self는 객체 자신을 가리킨다. class person() : def _..

(5)처음시작하는파이썬_[5장 모듈,패키지,프로그램]

모듈의 이용 def get_description() : from random import choice possible = ['rain','snow','sunny','fog','who knows'] return choice(possible) [메인 프로그램] import report description = report.get_description() print("Today is weather : ", description) python.py를 실행시키면 report 모듈을 찾아 get_description함수를 실행한다. report 모듈에서 get_description함수는 파이썬 표준 random 모듈로부터 choice함수를 임포트했다. 다른 이름으로 모듈을 임포트하고 싶다면 alias를 이용한다. ..

(4)처음시작하는 파이썬_[4장파이크러스트:코드구조]

라인 유지하기 : \ print('fjslfjsf\ fslljf') for문에서 튜플이나 리스트는 한 번에 한 항목을 순회하고, 문자열은 한 번에 한 문자를 순회한다. word = 'cat' for i in word : print(i) 딕셔너리의 순회는 키를 반환한다. 값을 하고 싶다면 values()를 이용, 키와 값 모두 반환하려면 items()를 이용한다. break문이 발생하지않으면 else : 가 실행된다. cheeses = ['mocha'] for cheese in cheeses : print('This shop has some lovely', cheese) break else : # break가 호출되지않으면 print('This is not much of a cheese shop') zip..

(3)처음시작하는 파이썬_[3-3튜플,셋,딕셔너리:3-8]

튜플 -> 불변, 상수의 리스트라고 할 수 있다. 요소가 하나 있을 때는 마지막 요소의 뒤에도 ','를 붙인다. ()를 이용한다. 튜플을 출력할 때는 (괄호)( )를 포함하지만 정의할 때는 필요없다. (있어도 좋음) 한번에 여러 변수에 할당할 수 있다. 이를 튜플 언패킹이라고 한다. marx_tuple = ('Groucho','Chico','Harpo') a,b,c = marx_tuple print(a) print(b) print(c) 딕셔너리 {}를 이용한다. 값에 사용하는 고유한 키를 지정한다. 딕셔너리의 키는 반드시 유일해야한다 만약 같은 키를 두 번 이상 사용하면 마지막 값이 승리한다. update() : 딕셔너리 결합 del : 키를 이용해 항목 삭제 python = { 'Chapman' : '..

(2)처음시작하는파이썬_[3-1:3-2]

파이썬에는 두 가지 다른 시퀀스 구조가 있다. 튜플과 리스트이다. 문자열과는 달리 각 요소는 어떤 객체도 될 수 있다. 튜플은 불변하고(항목을 할당하고 바꿀 수 없다.) 리스트는 변경 가능하다(항목을 할당하고 자유롭게 수정, 삭제가 가능하다) 3-2 리스트 콤마(,)로 구분하고, 대괄호([])로 둘러싸여있다. 다른 타입의 요소를 포함할 수 있다. 생성 -> [], list() list() : 다른 데이터 타입을 리스트로 변환하기 리스트는 offset을 이용해 항목 수와 항목 내용을 바꿀 수 있다. marxes = ['Groucho', 'Chico', 'Harpo'] marxes[2] = 'Wanda' print(marxes) append() : 리스트의 끝에 항목 추가하기 extend() 또는 '+=' ..

(1)처음시작하는파이썬[chapter2]

파이썬에서는 모든 것(bool, 정수, 실수 ,문자열, 함수 등)이 객체로 구현되어있다. a = 7 일 때 정수 7이 담긴 객체 박스 하나를 생성한다 a라는 이름의 변수에 정수값 7이 담긴 박스를 할당하는 것이다. 변수는 단지 데이터가 담긴 객체에 붙인 이름이다. 이름을 마치 포스트잇처럼 생각하라 2-2 숫자 / -> 부동소수점 나누기 // -> 정수 나누기 (소수점 이하 버림) ** -> 지수 파이썬은 문제없이 아주 큰 정수를 처리할수있다. 부동소수점수 -> 2-3 문자열 다른 언어와 달리 파이썬은 문자열이 불변이다! -> replace() 와 슬라이스와 같은 문자열 함수를 이용 print()는 문자열에서 인용부호(')를 제거한 뒤 내용을 출력한다. print()는 문자열..

[완독](11)점프투파이썬_6장 파이썬 프로그래밍, 어떻게 시작해야 할까?

6-2 3과 5의 배수 합하기 result = 0 for i in range(1,1000) : if i %3 ==0 or i %5 == 0 : result+= i print(result) 6-3 게시판 페이징하기 def getTotalPage(n,m) : if n%m ==0 : return n/m else : return (n//m) +1 # 소수점 뒤자리를 버린다. print(getTotalPage(5,10)) print(getTotalPage(15,10)) print(getTotalPage(25,10)) print(getTotalPage(30,10)) 6-4 간단한 메모장 만들기 python memo.py -a "Life is too short" 를 했을 대 메모를 추가 할 수 있도록 만들기 impo..

(10)점프투파이썬_[5-6외장함수]

sys 인수전달하기 - sys.argv import sys print(sys.argv) python 뒤에 모든 단어들이 공백을 기준으로 나뉘어 sys.argv 리스트의 요소가 된다. shutil : 파일을 복사해 주는 파이썬 모듈 shutil.copy(src, dst) src의 파일과 동일한 내용이 dst로 복사된다. import shutil shutil.copy("result.txt", "newfile.txt") time time.time 은 UTC를 이용해 현재 시간을 실수 형태로 리턴하는 함수이다. 1970년 1월 1일 0시 0분 0초를 기준으로 지난 시간을 초단위로 반환한다. import time print(time.time()) print(time.localtime(time.time())) pr..