-
210714_1(python2)BigData/Python 2021. 7. 14. 17:50
산술연산자
# 산술연산자 모두 지원함, 쉼표가 공백으로 연결자(+) 역할을 한다. print("7+4=", 7+4) #합 print("7*4=", 7*4) #곱 print("7/4=", 7/4) #나누기 print("7%4=", 7%4) #나머지 print("2**3=",2**3) # 2의 3승
변수사용하기
# 변수사용하기 # 파이선은 동적변수(값에따라서 데이터형이바뀐다)를 사용합니다. d = 100 a = 120 import turtle as t t.forward(d) t.left(a) t.forward(d) t.left(a) t.forward(d) t.left(a) t.forward(d) t.left(a)
for반복문
# for 반복문 #range(10) # 0~9까지 범위를 나타냄 #{ } 블럭이 없다. 대신 : 그리고 들여쓰기를 해야한다. for x in range(10): print(x) #반복문 범위 안 print("end!",x) #반복문의 영향에서벗어남 for x in range(3): print("첫째") print("둘째") print("셋째") print("넷째")
# 반복문을 이용하여 정삼각형과 정사각형을 그려보시오 import turtle as t for x in range(3): t.forward(100) t.left(120) for x in range(4): t.forward(100) t.left(90)
# 1~10까지 출력하시오 x=1 y=10 for i in range(x,y): #1에서9까지 출력된다 print(i) # 1에서 10까지 합을 구하시오 for i in range(1,11): x += i print(x) x=0 for x in range(1,11): print(x) sum = sum + x print("sum=",sum) sum=0
#보라색을 칠한 오각형을 그리시오 # befin_fill() 색상을 칠한 import turtle as t t.color("purple") # 색상을지정하고 t.begin_fill() # 칠을 시작하는부분 for x in range(5): t.forward(100) t.left(72) t.end_fill() # 칠을 끝난다
#원을 50개를 반복해서 그려라 import turtle as t n = 50 t.bgcolor("black") #배경색 t.color("green") # 펜의 색 t.speed(0) # 0~10 0이가장빠름 그리는 속도 for i in range(n): t.circle(30) t.left(360/n) # 선을 반복해서 그리는 프로그램 import turtle as t angle = 110 t.bgcolor("black") t.color("yellow") t.speed(0) for x in range(200): t.forward(x) t.left(angle)
외부변수받아 출력하기 input()
# 외부변수를 받아 출력하기 name = input("너이름이뭐니") print("안녕", name, "님아") # 두개의 값을 입력 받아 덧셈 한후 출력하시오 x = input("숫자를입력하시오") y = input("숫자를입력하시오2") sum = int(x)+int(y) #입력받은값을 문자열에서 정수로 형변환시켜줘야한다 print("x+y=", sum, sep='') # 프린트메서드 , 구분여백없애기 sep='' # 5개의 숫자를 받아서 총합을 구하는 프로그램을 작성하시오 num=5 sum=0 for x in range(num): print(x+1,"번째숫자를 입력하세요") inputnum = input() sum = sum + int(inputnum) print("입력값의총합:",sum)
시간 time클래스
# 시간 감각을 맞춰보는 프로그램 # 10초 경과를 정확히 맞춰보자 # time모듈의 itme()함수는 현재 유닉스 타임스탬프를 # 소수로 리턴하는데, 정수부는 초단위이고 소수부는 마이크로 초단위이다 import time input("엔터를 누르고 10초를 세어봅니다") start = time.time() # 현재시간 input("10초가 되었다면 엔터키를 누르시오") end = time.time() # 현재시간 elapse = end - start print("경과한시간",elapse,"초") print("시간차이:",abs(elapse-10),"초") import time tm = time.gmtime(time.time()) print(tm) #time.struct_time(tm_year=2021, tm_mon=7, tm_mday=14, tm_hour=2, # tm_min=53, tm_sec=12, tm_wday=2, tm_yday=195, tm_isdst=0) import time ltm = time.localtime(time.time()) print("year",ltm.tm_year) print("month",ltm.tm_mon) print("day",ltm.tm_mday) print("hour",ltm.tm_hour) print("min",ltm.tm_min) #time.struct_time(tm_year=2021, tm_mon=7, tm_mday=14, tm_hour=11, # tm_min=54, tm_sec=50, tm_wday=2, tm_yday=195, tm_isdst=0) import datetime now = datetime.datetime.now() print (now) #2021-07-14 12:00:39.403931
조건문 if
# 조건문 a = 3 if a == 3: print("success") b = int(input("숫자를입력하시오")) if b ==4: print("성공!") else: print("실패!") # 12+23= dml 문제를 보여주고 정답을 입력받아 맞으면 성공 틀리면 실패를 출력하는 #프로그램작성 x = int(input("12+23=?")) if x == 12+23: print("성공") else: print(("실패"))
# 문자열 비교 # 문자열도 등치연산자로 비교한다 first = "홍길동" second = "이순신" third = "홍길동" fourth = "홍" five = "대" if first == second: print("문자열이 일치합니다") else: print("일치하지 않습니다") if first == third: print("문자열이 일치합니다") #부분일치 if fourth in first: print("문자열이 부분 일치합니다") else: print("일치하지 않습니다") #부분일치 if five == first: print("문자열이 일치합니다") else: print("일치하지 않습니다")
난수 random 클래스
#난수 random # 1에서 50 사이 난수를 출력하시오 import random a = random.randint(1,50) print(a) # 마음대로 기어다니는 거북이 만들기 import turtle as t import random t.shape("turtle") t.speed(2) for x in range(500): a = random.randint(1,360) t.setheading(a) t.forward(a)
# 1에서 5사이의 난수를 발생시키고 # 하나의 값을 입력받습니다. # 난수와 값이 입력값과 일치하면 3배를 돌려주고 # 일치하지 않으면 YOU LOSE 라고 출력하기 import random a = int(input("1~5사이의 값을입력하시오")) b = random.randint(1,5) print(b) if a==b: a = a*3 print("값이",a,"가되었습니다") else: print("YOU LOSE")
while 반복문
# while 반복문 : 초기값, 범위, 증감치 # 1~10 출력하기 x=1 while(x <=10): print(x) x += 1 # 1에서 100까지 합을 출력하시오 x=1 sum=0 while(x <= 100): sum = sum + x x += 1 print(sum)
숫자형변수 / 문자형변수
# 자료형 정리 #숫자형 : 정수, 실수, 8진수, 16진수 a = 0o175 # 8진수 175는 10진수 125이다 print(a) b = 0x4F # 16진수 4F는 10진수 79이다 print(b) # 연산에서 % 는 나머지. 몫은 // 이다 print(45 % 4) # 나머지는 1이다 print(45 // 4) # 몫은 11이다 # 여러줄 주석 (') 세번 ''' 여러줄 주석입니다 ''' # 문자열 반복 hi = "Hi" print(hi*4) # 문자열 인덱싱(주소값) str = "HELLO" print(str[0]) print(str[1]) print(str[2]) print(str[3]) print(str[4]) # 문자열 인덱싱(주소값) str = "HELLO" print(str[-1]) # 뒤에서 첫번째 print(str[-2]) # 뒤에서 두번째 print(str[-3]) # 뒤에서 세번째 print(str[-4]) # 뒤에서 네번째 print(str[-5]) # 뒤에서 다섯번째 # 슬라이싱 print(str[0:3]) # 0부터 3개 # [시작:끝] str2 = "20210714Hotday" date = str2[:8] # 시작은 상관없고 8번째까지 print(date) weather = str2[8:] # 8부터 끝까지 print(weather) # 문자열 포맷 print("I eat %d apples" %3) # %d 정수 print("I eat %s apples" %"five") # %s 문자열 cnt = 3 str = "GILDONG" print("%s eat %d apples" %(str,cnt)) # %s 문자열 # 포맷 종류 : %s(문자열), %d(정수), %c(문자), %f(실수), %o(8진수), %x(16진수), %%(문자) # 문자열관련 함수 #count('찾을문자',시작점,끝) print(str.count("G",1,8)) # len() #길이구하기 print(len(str)) # find() #위치 없으면 -1 # index() #위치 없으면 error # print(",".join('abcd')) #a,b,c,d # upper() #대문자 # lower() #소문자 # lstrip() #왼쪽공백제거 # rstlip() #오른쪽공백제서 # strip() #양쪽공백제거 # replace("찾을","바꿀") #문자열대체 # split() #문자열분리
저장데이터형 list()
# 여러개 저장 데이터형 # list(), tuple() 수정불가, dictionary(), set() #list() 여러가지 모습 # 리스트명 = [요소,요소,요소,,,] a = [] b = [1,2,3] c = ["가","나","다"] d = [1, "가", 2, "나"] e = [a, b, c, ["A","B","C"] ] f = [a, b, c, [1,2,3] ] print(e) print(e[0]) print(e[1]) print(e[2]) print(e[3]) print(e[3][2]) print(e[3][1]) #요소값 바꾸기 e[3][1] = 100 print(e[3][1]) e[3][2] = 'very' print(e[3][2]) print(e) #리스트 관련함수 list.append(요소) #추가 list.sort() #정렬 list.reverse() # 역순 list.index(요소) #요소위치 list.insert(위치,값) # 요소넣기 list.remove(요소) #요소삭제 list.pop(index) # 특정위치 꺼내기 list.count(요소) # 요소갯수 list.extend(리스트형요소) # 리스트에 리스트형요소를연결한다
tuple()
# 여러개 저장 데이터형 # list(), tuple() 수정불가, dictionary(), set() # tuple 여러가지 모습 # 튜플명 = (요소,요소,요소,,,) a = () b = (1, 2, 3) c = ("가", "나", "다") d = (1, "가", 2, "나") e = (a, b, c, ("A", "B", "C")) f = (a, b, c, [1, 2, 3]) print(type(a)) print(e) print(e[0]) print(e[1]) print(e[2]) print(e[3]) print(e[3][2]) print(e[3][1]) # 요소값 바꾸기 e[3][1] = 100 #튜플은 초기화가 불가능하다. print(e[3][1]) print(e) f[3][2] = 'very' #리스트가 요소인 튜플은 수정가능 print(f[3][2]) print(f)
dictionary
# dictionary # key : value 로 저장되는 구조 # 딕셔너리는 {key:value,key:value,key:value,,,} 를 이용한다 student = {'no':1111, 'name':'홍길동', 'phone':'010-1111-1111'} print(type(student)) print(student['no']) print(student['name']) print(student['phone']) # <class 'dict'> # 1111 # 홍길동 # 010-1111-1111 student['no'] = 123 # 초기화가능 print(student['no']) #인덱스사용은 안된다 print(student[0]) #요소 추가 student['address'] ='seoul' print(student) #요소 삭제 student.__delitem__('no') print(student) del student['address'] print(student) # 키를 이용해서 리스트로 만들기 stkey = student.keys() print(stkey) # dict_keys(['name', 'phone']) 키만모아서 리스트로 만들어줌 # 리스트가 되면 반복을 쉽게 for k in student.keys(): print(k) # no # name # phone # 리스트 형변환 keylist = list(student.keys()) print(type(keylist)) # <class 'list'> #밸류값으로 리스트 만들기 vallist = student.values() print(type(vallist)) # <class 'dict_values'> # 리스트로 형변환 시키기 vlist = list(vallist) print(type(vlist)) # <class 'list'> # key:value 쌍으로 얻기 st_items = student.items() print(type(st_items)) # <class 'dict_items'> #k를 이용한 v받기 print(student.get('no')) print(student.get('name')) print(student.get('phone')) # 1111 # 홍길동 # 010-1111-1111 #요소 지우기 student.clear() print(student) # {} # get(키,디폴트)을 이용한 student.get('no') print(student.get('no')) student.get('no2') student.get('no2','값이없어요') #찾는키가 없으면 디폴트값이 나온다 # Out[44]: '값이없어요' # 특정키가 있는지 조사하기 print('no' in student) # True print('no2' in student) # False
집합자료형 set()
# 집합자료형 set { } # 특징 : 중복불허, 순서가 필요없다 # 집합 : 합집합, 교집합, 차집합 ... # list 를 set으로 만듬 sd = set([1,2,3,4,5]) print(sd) type(sd) # {1, 2, 3, 4, 5} # Out[48]: set # 문자열을 set으로 sd2 = set('abcde') print(sd2) type(sd2) # {'c', 'd', 'b', 'e', 'a'} # Out[49]: set s1 = set([1,2,3,4,5,6]) s2 = set([4,5,6,7,8,9]) #합집합 print(s1|s2) print(s1.union(s2)) # {1, 2, 3, 4, 5, 6, 7, 8, 9} #중복값없음 #교집합 print(s1&s2) print(s1.intersection(s2)) # {4, 5, 6} #차집합 print(s1-s2) print(s2-s1) print(s1.difference(s2)) print(s2.difference(s1)) # {1, 2, 3} # {8, 9, 7} # {1, 2, 3} # {8, 9, 7} print(s1.c) #대칭차집합 print(s1^s2) print(s1.symmetric_difference(s2)) # {1, 2, 3, 7, 8, 9} #집합 요소 추가하기 s1.add(10) print(s1) # {1, 2, 3, 4, 5, 6, 10} #집합요소들 추가하기 s2.update([11,22,33]) print(s2) # {33, 4, 5, 6, 7, 8, 9, 11, 22} #특정 값 제거하기 s2.remove(33) print(s2) # {4, 5, 6, 7, 8, 9, 11, 22}
불자료형
# 불 자료형 a = True b = False type(a) # Out[64]: bool print(1==1) #True print(2>1) #True print(2.5>11.5) #False print(bool(())) print(bool([])) print(bool({})) bool(0) #False bool(1) #True bool(2) #True bool('') #False bool(' ') #True if(): print("참") else: print("거짓") # 디폴트는 False이다 a = [1,2,3,4] while a: #a가 참인동안 모든요소를 다 꺼내라 print(a.pop()) #pop() 마지막요소를 꺼낸다. # 4 # 3 # 2 # 1
'BigData > Python' 카테고리의 다른 글
210720_1(데이터수집하기) (0) 2021.07.20 210719_1(데이터수집하기) (0) 2021.07.19 210716_1(데이터수집하기) (0) 2021.07.16 210715_1(python3) (0) 2021.07.15 210713_2(python1)아나콘다,파이참 설치 (0) 2021.07.13