Closed yangbongsoo closed 1 year ago
import keyword
# TODO: 2장 데이터
# TODO: 실수의 두 가지 표현방식 4page
# 고정 소수점 방식 : 132.234, -0.023 같이 소수점을 고정하여 표시하는 방법
# 부동 소수점 방식 : 1.53e+5(= 1.53 * 10^5), 3.5e-64(= 3.5 * 10^-64) 같이 지수형으로 표시하는 방법
# TODO: 변수명 규칙 시험에 나옴. 2장 데이터 pdf 12,13page
# 변수명은 영어 대소문자, 숫자, 밑줄(_) 로만 이뤄진다. ex) Money$ : 문자 $ 사용 못함
# 변수명은 영어 대소문자 또는 밑줄로만 시작 ex) 7up, 5brothers : 숫자로 시작 못함
# 파이썬 지정단어들은 변수명으로 사용 불가
# 파이썬에서는 대소문자 구분한다. ex) hour 와 Hour 는 다른 변수다
# 2nd_base : 숫자로 시작 할 수 없다.
# #money : # 문자 기호 사용 못함
# varname$ : $ 특수 문자 사용 못함
# id name : 중간에 공백 문자 사용 못함
# for : 예약어 for 를 변수명으로 사용 못함 # print(keyword.kwlist)
x = 15
print(type(x)) # <class 'int'> 타입 이름 기억해라
x = 2.5
print(type(x)) # <class 'float'>
x = "Hello"
print(type(x)) # <class 'str'> string이 아니라 str 이다.
# swap
a = 10
b = 20
a, b = b, a
# print("a : ", a)
# print("b : ", b)
# TODO: 3장 연산자
# 파이썬은 나누기하면 항상 실수로 나옴 (중요)
# ex) 1/2 = 0.5
# ex) 3 // 2 = 1 나눈 후 몫
# 복합 연산자 3장 연산자 pdf(p3) 시험에 나옴
# x+=y 의 의미는? 답 x = x+y
# Round 함수 출제 - 몇 자리인지
# 반올림하는데 소수점 이하 4자리까지 보존함. 5번째에서 반올림 수행
print(round(3.123456, 4)) # 결과 : 3.1235
print(round(3.123456)) # 자릿수 지정안하면 정수 반환. 출력 결과 : 3
# 17 을 4로 나눈 몫과 나머지를 같이 반환
a, b = divmod(17, 4)
print(a, b)
# 가장 상단의 빈칸 채우시오 형태 * Math 모듈 임포트 p5
# from math import * # : 이 경우 모듈 이름이 불필요
# a = sqrt(2.0) # : sqrt() 함수를 함수명으로만 호출
# import math : 이 경우 math. 를 붙여야함
# a = math.sqrt(2.0) : sqrt() 함수 앞에 해당 모듈명을 명시해야함
# import math as m # : 이 경우 m. 을 붙여야함
# a = m.sqrt(2.0) # : m 은 math 의 별칭에 해당
# math 모듈 중 trunc() 함수 출제
# trunc() 함수 : 인수로 받은 값의 버림 계산 ex) math.trunc(1.5) == 1
# 연산자 %, // 구분해야 함
# TODO: 4장 문자열
# 문자열 문제 작은 따옴표 3개 - 예) ‘Hello!” 를 출력하라
print("'Hello!\"")
print('\'Hello!"')
# 이거 시험에 나온다. 백슬래시 활용
# print("the law' requirements")
# print('the law\' requirements')
# print("\"Hi! Good morning?\"")
# string * 연산자. 곱하기가 아니다. 반복 operator 다
# print("=" * 10)
# in 연산자
# print("Sog" in "Sogang University") # 대소문자 다르면 다르게 판단
# print("YBS" not in "Sogang University")
# 문자열 포매팅 관련 2문제 출제 - 예) 8.3f 의 경우 어떤 형태로 출력되는지
# TODO: 시험에 나옴 e+02 에서 0이 붙은거는 외워라.
print("{:8.3f}".format(3.141592))
print("|{:8.3e}|".format(314.15926)) # 소숫점이하 3 자리 지수 (8자리) |3.142e+02|
print("|{:9.2e}|".format(314.15926)) #
print("|{:010,d}|".format(12345)) # space bar 대신 0 을 넣는다. 총10개 문자 사용하라(쉼표도 문자에 포함)
print("average = %10.2f" % 12345678.923) # 총 10개가 넘어가도 짜르지 않고 출력된다.
# replace() 함수 문제 - 예) Hi 를 Hello 로 바꿔 반환
s = "Hi everybody!"
s1 = s.replace("Hi", "Hello")
print(s1)
# TODO: 5장 입출력
# n1, n2, n3 = input("Enter two names :").split() # n3 에러나옴 : ValueError: not enough values to unpack
# print(n1, n2)
# end 인자: end=’#’
# print 줄바꿈이 필요없는 경우 end 인자 설정을 바꾼다(디폴트로 출력 문자열 마지막에 \n 더해짐 그래서 줄바꿈 발생)
# 줄바꿈 대신 end 인자값으로 채워진다.
print("First Person.", end='')
print("Second Person.")
print("First Person.", end='#')
print("Second Person.")
# TODO: 6장 조건문
# 윤년 조건문 시험에 나올 수 있음
year = 2022
if ((year % 4 == 0) and (year % 100 != 0)) or (year % 400 == 0):
print("윤년")
else:
print("윤년 아님")
condition
problem1
problem2
problem3