파이썬 53

[ Python ] 클래스 만들기

# 클래스 만들기 # ------------ 클래스 생성 시작 -------------- class Unit: def __init__(self, name, hp, damage): self.name = name self.hp = hp self.damage = damage print("{0} 유닛이 생성 되었습니다.".format(self.name)) print("체력 {0}, 공격력 {1}".format(self.hp, self.damage)) # ------------ 클래스 생성 끝 -------------- marine1 = Unit("마린", 40, 5) marine2 = Unit("마린", 40, 5) tank = Unit("탱크", 150, 35)

Python 2021.03.07

[ Python ] 클래스 시작하기.

# 클래스 # 스타크래프트 게임 예시 # 마린 : 공격 유닛, 군인. 총을 쏠 수 있음 name = "마린" # 유닛의 이름 hp = 40 # 유닛의 체력 damage = 5 # 유닛의 공격력 print("{0} 유닛이 생성되었습니다.".format(name)) print("체력 {0}, 공격력 {1}\n".format(hp, damage)) # 탱크 : 공격 유닛, 탱크. 포를 쏠 수 있는데, 일반 모드 / 시즈 모드 tank_name = "탱크" tank_hp = 150 tank_damage = 35 print("{0} 유닛이 생성되었습니다.".format(tank_name)) print("체력 {0}, 공격력 {1}\n".format(tank_hp, tank_damage)) tank2_name = ..

Python 2021.03.07

[ Python ] 1주차부터 5주차까지의 보고서 파일을 만드는 프로그램을 작성하시오.

# Quiz) 당신의 회사에서는 매주 1회 작성해야 하는 보고서가 있습니다. # 보고서는 항상 아래와 같은 형태로 출력되어야 합니다. # - X 주차 주간보고 - # 부서 : # 이름 : # 업무 요약 : # 1주차부터 5주차까지의 보고서 파일을 만드는 프로그램을 작성하시오. # 조건 : 파일명은 '1주차.txt', '2주차.txt', ...와 같이 만듭니다. # ------------------ 풀이 시작 ------------------# for i in range(1, 6): with open(str(i) + "주차.txt", "w", encoding="utf8") as report_file: report_file.write("- {0} 주차 주간보고 -".format(..

Python 2021.03.07

[ Python ] 파일 입출력 (쓰기)

# 파일 입출력 # "w" : 파일을 write 쓰기 용도로 열기 # 이미 존재하는 파일에 "w"로 open하면 덮어쓰기가 된다. # encoding="utf8" 을 입력하지 않으면 한글이 깨질 수 있다. # open() 파일을 열어주면 필히 close()로 파일을 닫아주어야 한다. # --------- 방법1 시작------------ # score_file = open("score.txt", "w", encoding="utf8") # print("수학 : 0", file=score_file) # print("영어 : 40", file=score_file) # score_file.close() # --------- 방법1 끝------------ # "a" : 파일을 덮어쓰지 않고 이어서 쓰고 싶을 때..

Python 2021.03.07

[ Python ] 다양한 출력 포맷(빈 자리 빈 공간, 오른쪽 정렬, 총 10자리 확보, 3자리 마다 콤마, ^으로 빈칸 채우기, 소수점 둘째 자리까지 출력,

# 다양한 출력 포맷 # 빈 자리는 빈공간으로 두고, 오른쪽 정렬을 하되, 총 10자리 공간을 확보 print("{0: >10}".format(500)) # 양수일 땐 +로 표시, 음수일 땐 -로 표시 print("{0: >+10}".format(500)) print("{0: >+10}".format(-500)) print("{0: >10}".format(-500)) # 부호가 없는 경우에도 -500이 출려되지만 양수일 경우, +는 표시가 되지 않는다. # 왼쪽 정렬하고, 빈칸으로 _로 채움 print("{0:_

Python 2021.03.07

[ Python ] 표준 입출력(sep,end, sys.stdout, sys.stderr, ljust(), rjust(), zfill(), input(), type()

# 표준 입출력 # sep="" 활용법 print("Java", "Python", "JavaScript", sep=" VS ") # end=" " // 줄바꿈 되지 않고 이어서 출력된다. print("안녕하세요. 저는", end=" ") print("홍길동 입니다.") print("Java", "Python", sep=", ", end="? ") print("무엇이 더 재미있을까요?") import sys print("Python", "Java", file=sys.stdout) # 표준 출력 print("Python", "Java", file=sys.stderr) # error log를 남기기 위함 # 시험 성적 # ljust(칸 수) : 왼쪽 정렬 # rjust(칸 수) : 오른쪽 정렬 # ljust(..

Python 2021.03.07

[ Python ] Quiz 6. 표준 체중을 구하는 프로그램을 작성하시오.

Quiz) 표준 체중을 구하는 프로그램을 작성하시오. # Quiz) 표준 체중을 구하는 프로그램을 작성하시오. # * 표준 체중 : 각 개인의 키에 적당한 체중 # (성별에 따른 공식) # 남자 : 키(m) x 키(m) x 22 # 여자 : 키(m) x 키(m) x 21 # 조건1 : 표준 체중은 별도의 함수 내에서 계산 # * 함수명 : std_weight # * 전달값 : 키(height), 성별(gender) # 조건2 : 표준 체중은 소수점 둘째자리까지 표시 # (출력 예제) # 키 175cm 남자의 표준 체중은 67.38kg 입니다. # ----------------- 풀이 과정 시작 ----------------- def std_weight(height, gender): if gender ==..

Python 2021.03.06

[ Python ] 전역변수와 지역변수

지역변수와 전역변수 # 지역변수 : 함수 내에서만 사용 가능. # 함수 호출되면 만들어졌다가 함수 호출이 끝나면 사라지는 변수. # 전역변수 : 프로그램 모든 공간 어디에서든 불러서 사용할 수 있는 변수. # 예시 : 군대 gun = 10 def checkPoint(soldiers): global gun # 전역 공간에 있는 gun 사용 gun = gun - soldiers print("[함수 내] 남은 총 : {0}".format(gun)) # 일반적으로 전역 변수를 사용하면 코드 관리가 어려워서 권장하진 않는다. (global gun) # 가급적 함수의 전달 값으로 던져서 반환값을 받아서 사용한다. def checkPoint_ret(gun, soldiers): gun = gun - soldiers p..

Python 2021.03.06

[ Python ] 가변 인자 사용법. (*language)

'가변 인자'를 이용한 함수 호출 # 끝에 end=" " 이렇게 입력해주면 다음 출력이 줄바꿈 되지 않고 이어서 출력된다. # 방법1 # def profile(name, age, lang1, lang2, lang3, lang4, lang5): # print("이름 : {0}\t나이 : {1}\t".format(name, age), end=" ") # print(lang1, lang2, lang3, lang4, lang5) # lang1,2,3,4,5 -> *language 로 수정 def profile(name, age, *language): # 가변 인자 print("이름 : {0}\t나이 : {1}\t".format(name, age), end=" ") for lang in langua..

Python 2021.03.06

[ Python ] 함수 매개변수의 기본값(default) 설정

기본값 # 코드 줄바꿈을 할 때는 \ 입력하고 enter해서 이어서 쓰면 된다. # -------- 아래 코드를 실행하기 위한 주석처리 --------- # def profile(name, age, main_lang): # print("이름 : {0}\t나이 : {1}\t주 사용 언어 : {2}" \ # .format(name, age, main_lang)) # profile("유재석", 30, "파이썬") # profile("김태호", 20, "자바") # 같은 나이라면 나이, 주 언어(수업)를 하나하나 입력해줄 필요가 없다. # 같은 학교 같은 학년 같은 반 같은 수업. # 기본값 : 위와 같은 경우에 사용하는 것이 기본값. def profile(name, age=17, main_lang="파이썬")..

Python 2021.03.06

[ Python ] 전달값과 반환값(매개변수, return)

전달값과 반환값 # 함수 정의 def deposit(balance, money): print("입금이 완료되었습니다. 잔액은 {0} 원입니다.".format(balance + money)) return balance + money def withDraw(balance, money): if balance >= money: print("출금이 완료되었습니다. 잔액은 {0} 원입니다.".format(balance - money)) return balance - money else: print("출금이 완료되지 않았습니다. 잔액은 {0} 원입니다.".format(balance)) return balance def withDraw_night(balance, money): # 출금액이 잔액보다 크다는 가정은 일단 ..

Python 2021.03.06

[ python ] 한 줄 for 사용법.

한 줄 for # 출석번호가 1 2 3 4, 어느날 출석번호 앞에 100을 붙이기로 함 -> 101, 102, 103, 104. students = [1, 2, 3, 4, 5] print(students) # 출력 : [1, 2, 3, 4, 5] students = [i + 100 for i in students] print(students) # 출력 : [101, 102, 103, 104, 105] # 학생 이름을 길이로 변환 students = ["Iron man", "Thor", "I am groot"] students = [len(i) for i in students] print(students) # 출력 [8, 4, 10] # 학생 이름을 대문자로 변환 students = ["Iron man",..

Python 2021.03.04

[ python ] continue 와 break 사용법.

continue 와 break # 반복문 내에서 사용 가능 # 교실에서 학생 번호를 호명하면 책을 읽게 하는 프로그램 absent = [2, 5] # 결석 no_book = [7] # 책을 깜빡했음 # continue : 아래 코드를 실행하지 말고 다음 반복문으로 실행하라. # break : 반복문을 바로 탈출해버린다. for student in range(1, 11): # 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 if student in absent: continue elif student in no_book: print("오늘 수업 여기까지. {0}은 교무실로 따라와.".format(student)) break print("{0} 번, 책을 읽어보세요.".format(student))

Python 2021.03.04

[ Python ] while 반복문 사용법.

while 반복문 # 스타벅스에서 손님을 5번 불렀는데 나타나지 않으면 커피를 버리는 정책을 만들었다고 가정. customer = "토르" index = 5 while index >= 1: print("{0}, 커피가 준비 되었습니다. {1} 번 남았어요.".format(customer, index)) index -= 1 if index == 0: print("커피는 폐기처분 되었습니다.") # 출력 # 토르, 커피가 준비 되었습니다. 5 번 남았어요. # 토르, 커피가 준비 되었습니다. 4 번 남았어요. # 토르, 커피가 준비 되었습니다. 3 번 남았어요. # 토르, 커피가 준비 되었습니다. 2 번 남았어요. # 토르, 커피가 준비 되었습니다. 1 번 남았어요. # 커피는 폐기처분 되었습니다. # 다른..

Python 2021.03.04

[ Python ] for 반복문 사용법

for (반복문) in # 식당에서 대기번호 부여 # print("대기번호 : 1") # print("대기번호 : 2") # print("대기번호 : 3") # print("대기번호 : 4") for waiting_no in [10, 20, 30, 40, 50]: print("대기번호 : {0}".format(waiting_no)) # 내가 응용 for waiting_no in range(1, 11): # 1 부터 10 까지 print("대기번호 : {0}".format(waiting_no)) # randrange() for wating_no2 in range(5): # 0부터 4까지 print("대기번호 : {}".format(wating_no2)) # 다른 예제 starbucks = ["아이언맨", ..

Python 2021.03.04

[ Python ] 추첨을 통해 1명은 치킨, 3명은 커피 쿠폰을 받게 되는 프로그램을 작성하시오.

Quiz) 당신의 학교에서는 파이썬 코딩 대회를 주최합니다. 참석률을 높이기 위해 댓글 이벤트를 진행하기로 하였습니다. 댓글 작성자들 중에 추첨을 통해 1명은 치킨, 3명은 커피 쿠폰을 받게 됩니다. 추첨 프로그램을 작성하시오.조건1 : 편의상 댓글은 20명이 작성하였고 아이디는 1~20 이라고 가정 조건2 : 댓글 내용과 상관 없이 무작위로 추첨하되 중복 불가 조건3 : random 모듈의 shuffle 과 sample 을 활용# (출력 예제) # -- 당첨자 발표 -- # 치킨 당첨자 : 1 # 커피 당첨자 : [2, 3, 4] # -- 축하합니다. -- # (활용 예제) from random import * lst = [1, 2, 3, 4, 5] print(lst) shuffle(lst) # 순서를..

Python 2021.03.04

[ Python ] 자료구조의 변경(집합, 리스트, 튜플 등)

자료구조의 변경 # 커피숍 # 집합 menu = {"커피", "우유", "주스"} print(menu, type(menu)) # 출력 : {'주스', '커피', '우유'} # 리스트 menu = list(menu) print(menu, type(menu)) # 출력 : ['주스', '커피', '우유'] # 튜플 menu = tuple(menu) print(menu, type(menu)) # 출력 : ('주스', '커피', '우유') # 다시 집합 menu = set(menu) print(menu, type(menu)) # 출력 : {'우유', '주스&#39..

Python 2021.03.03
728x90
반응형
LIST