본문 바로가기

PYTHON

Python 소켓을 이용해 서버와 클라이언트 서로 통신해보기 Python 소켓을 이용해 서버와 클라이언트 서로 통신해보기 이글은 제가 공부하고 이해한 것을 정리한 내용이라 틀린 부분이있을수 있습니다. 어제에 이어 오늘도 소켓공부를 해보았다. 공부하면서 느낀건데 파이썬으로 소켓다루기는 매우간단한거같다 서버쪽 코드를 먼저 만들어봤다 일단은 소켓을 생성해준다 1 2 3 4 5 6 7 import socket try: s=socket.socket(socket.AF_INET,socket.SOCK_STREAM) print("소켓 생성완료") except socket.error as err : print("에러 발생 원인 : %s"%(err)) cs 그다음 서버아이피와 포트를 지정해준후 클라이언트에서 요청이 오기전까지 기다리는 코드를 만들어봤다 1 2 3 4 5 6 7 8 9.. 더보기
Python 소켓을 이용해 구글 웹서버에 접속해보았음 이글은 제가 공부하고 느낀것을 정리한글이라 틀릴수도있습니다 기본적인것부터 정리해보자 가장먼저 소켓을 생성해보자 1 2 import socket s=socket.socket(socket.AF_INET, socket.SOCK_STREAM) cs 이런식으로 소켓을 생성할수가있다 두개의 인자에서 AF_INET는 ipv4로 통신하겠다는거고 만약 ipv6로 하려면 AF_INET 대신에 AF_INET64로 값을 적어주면된다. SOCK_STREAM 은 연결형(TCP)으로 통신하겠다는거 같다. 만약 연결형(TCP)말고 비연결형(UDP)로 통신하려면 SOCK_DGRAM값을 적어주면되는거같다. 여기까지는 소켓을 생성하는 가장 기본적인 단계이다. 저렇게 두줄을 딸랑적으면 소켓이 생성됬는지 안됬는지 모르기떄문에 코드를 추가해서.. 더보기
python 유용한 모듈 1 : datetime datetime모듈은 현재시간과 날짜를 알수있다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 import datetime now = datetime.datetime.now() print now.year # 년도 print now.month # 월 print now.day # 일 print now.hour # 시 print now.minute # 분 print now.second # 초 # 출력 # 2016 # 8 # 5 # 19 # 9 # 57 cs 이런식으로 사용하면된다 한줄로 정리하면 1 2 3 4 5 6 7 import datetime now = datetime.datetime.now() print("%04d/%02d/%02d %02d:%02d:%02d "%(now... 더보기
python 공부 딕셔너리 딕셔너리(Dictionary) 에대해 공부해보겠습니다 딕셔너리는 Key 와 Value 랑 한쌍으로 이루어져있습니다. 원하는 키갑을 적으면 그키값에 맞는 값이나오게되죠 딕셔너리 형태는 이렇습니다 a={'key1':'Value1','key2':'Value2','Key3':'Value3'} 이런식으로 되있습니다. 코드 하나를 적어보도록하겠습니다 info={'name':'yutae','age':'19','phone':'01076330584'} 이번에는 키값을 넣어서 원하는값을 추출하는 방법입니다. info['name'] info['phone'] 딕셔너리이름['key값'] 을적어주면 원하는 Key안에 Value값을 추출할수있습니다. 이번에는 딕셔너리 쌍 추가와 삭제법입니다 먼저 딕셔너리를 만들어줍니다 roma={.. 더보기
python 공부 터플(tuple) 파이썬 터플(tuple)에 대해 공부해보겠습니다. 터플은 튜플이라고도 불린다고하네요 터플은 일단 리스트와 비슷합니다 값을 담는대 사용되는데요. 리스트는 '[' ']'로 감싸주죠 a=[1,2,3,4] 이런식으로 하지만 터플은 '[' ']' 가아닌 '(' ')' 로감싸줍니다 b=(1,2,3,4) 리스트랑 터플의 차이가 뭐냐고 생각하게될것입니다. 리스트와 터플의 차이는 리스트는 값을 변경,수정,삭제 등 가능하지만 터플은 값이 고정되어 변경해줄수없습니다. 터플의 값을 변경해주려고하면 에러가 납니다. 보이시는대로 값을 수정하거나 삭제가 불가능합니다. 더보기
python 공부 리스트 변경 삭제 파이썬 리스트 변경 삭제 하는 방법에대해 공부해보겠습니다. 먼저 리스트를 변경하는방법입니다 list = [1,2,3] list[0] = '1' list[1] = '2' list[2] = '3' 이런식으로 들어있습니다. 리스트를 수정할때는 list[2] = 4 이런식으로 변경하고자하는 리스트의 위치를 적고 변경할 값을 적어주시면됩니다. 기존에 list[2] 안에는 '3' 이라는 값이들어있엇지만 list[2] = 4 를 선언하면 list[2] 값이 '4' 로 변경된것을 볼수잇습니다. 이번에는 리스트 수정방법 2번째에대해 공부해보겠습니다. list=[1,2,4] 이런식으로 리스트가만들어져있습니다. list[1:2] = ['a','b','c'] 이런식으로 입력하게되면 list[1] 안에 있던 '2' 값대신에 [.. 더보기
python 공부 리스트 리스트(List)에 대해 공부해보겟습니다. 리스트는 집합 이라고 보시면됩니다. 먼저 리스트를 만들때는 ([]) 대괄호로 감싸주고 그사이를 (,)쉼표로 구분해줍니다. 예를들어 list=[1,2,3,4] 이런식으로 리스트를 설정해줍니다. 여기서 앞에서 말햇듯이 파이썬은 0이 첫번째를 가르킵니다. a[0] = 1 a[1] = 2 a[2] = 3 a[3] = 4 이런식으로 되겠습니다. 리스트의 인덱싱 리스트에서는 두값을 서로 더할수도있습니다. list[0]+list[3] 이말은 list[0] = 1 이랑 list[3] = 4 를 서로 더한다는 말입니다. 이번에는 좀더 응용해서 리스트안에 리스트를 넣어보겠습니다. c언어로 하자면 2차원 배열(?) 인거죠 먼저 리스트를 만들어줍니 list=[1,2,3,['a','b.. 더보기
python 공부 문자열 함수들 파이썬 문자열에서 자주쓰이는 함수들을 정리해봤습니다. upper() 먼저 소문자를 대문자를 바꿔주는 upper()라는 함수입니다. a = "hi" a.upper() 이런식으로 소문자를 대문자로 편리하게 바꿀수있습니다. lower() 이번에는 대문자를 소문자로 바꿔주는 lower() 함수입니다. a.lower() 사용하시면 대문자를 소문자로 바꿔줍니다. swapcase() 이번에는 대문자와 소문자를 서로 바꿔 주는 swapcase() 함수입니다. a = "Hi Python" a.swapcase() len() 이번에는 변수 안에 있는 문자열의 길이를 구해주는 함수 len() 함수입니다. len(a) 구하고싶은 변수를 len() 안에적어주면 길이를 구할수있습니다. count() 이번에는 문자열중에 특정 문자의.. 더보기
python 공부 문자열 포매팅 문자열 포매팅이란 문자열 내에 어떤 값을 삽입하는 방법입니다. 대입은 숫자애도 가능하고 문자에도 가능하고 변수에도 가능합니다. 먼저 예시로 숫자에 대입해보겠습니다. print("I`m %d years old!"% 19) 상황에따라 값을 변경하여 이런식 으로 대입을 해줄수있습니다. 이번에는 문자열 입니다. print("I`m very %s!"% "happy") 문자열을 대입할떄는 문자를 (")로 감싸줘야합니다. 이번에는 변수에 대입해보겠습니다. age=19 print("I`m %d years old!"% age) 이번에는 두개의 값을 치환해보겠습니다 age=19 feel="happy" print("I`m %d years old!, I`m very %s!"% (age,fel)) 언제 %d를써야하고 어느떄 %.. 더보기
python 공부 문자열 인덱싱과 슬라이싱 문자열의 인덱싱과 슬라이싱에대해 공부해봤습니다. 인덱싱(indexing) = 가르키다 라는 뜻이라네요 슬라이싱(slicing) = 잘라내다 라는 뜻이군요. 먼지 a라는 변수안에 Hello Python!을 넣어보도록하겠습니다. a = "Hello Python!" 먼저 인덱싱입니다. a[0] 을 하게되면 a 변수에 0번째 문자를 가르키라는 말입니다. 이렇게 a변수안에 0번째를 가르치는것은 H네요. C언어의 배열과 같네요 이해가 안가시는분들을위해 자세히 설명드리겠습니다. print(a[0]) = "H" print(a[1]) = "e" print(a[2]) = "l" print(a[3]) = "l" print(a[4]) = "o" print(a[5]) = "w" print(a[6]) = " " print(a[7.. 더보기