반응형


이번 포스팅은 Python3 에서 랜덤값을 얻는 방법에 대해 간단히 정리해 봤습니다. 더 자세한 내용은 직접 파이썬 도큐먼트를 참고 하세요. ^^;


Python3 에서 랜덤 클래스를 사용하기 위하여....

import random 을 처음에 적어줍니다. 그리고 랜덤클래스는 인스턴스를 생성하지 않고 사용합니다.




1. random.seed([seed])

컴퓨터에서 만드는 랜덤값은 모두 계산에 의해 나오는 유사랜덤값입니다. 그러한 랜덤값을 좀더 랜덤하게 만들기 위해서 seed 값을 임의로 넣어줍니다. 만일 생략하거나 None 값인 경우 seed 값으로 현재 시간을 사용합니다.


2. random.random() 

0.0 <= x < 1.0 사이의 값을 출력합니다.


3. random.uniform(a.2, b.5)

a.2 <= x < b.5  사이의 값을 출력합니다.


4. random.randrange(b)

0 <= x < b 사이의 정수값을 출력합니다.


4. random.randrange(a,b)

a <= x < b  사이의 정수값을 출력합니다.


5. random.randint(a,b)

a <= x <= b  사이의 정수값을 출력합니다. 



위는 간단한 사용예 입니다. 뭐....별거 없습니다.


이상은 일반적인 랜덤값을 얻는 함수들이고요.....




파이썬에는 조금 재미있는 함수들이 있더군요.


6. random.choice(x)

x 에 list 변수등을 넣으면 리스트중에 하나의 값을 임의로 리턴해 줍니다.


7. random.shuffle(x)

x 에 list 변수등을 넣으면 내부 값들을 알아서 섞어 줍니다. 


8. random.sample(x,n)

x list 등에서 랜덤하게 n 개의 값을 리턴합니다.



위는 간단한 사용예 입니다. 나름 재미있게 사용할 수 있을것 같네요. 

반응형


2019년 8월 내용을 수정합니다.


시간이 오래 지나다 보니 대부분의 링크가 깨져 있어서 모두 삭제했습니다.

확인 결과 살아 있는 링크는 https://wikidocs.net/ 하나 뿐이군요. ㅡㅡ;


예전 점프 투 파이썬은 2.x 버전을 다루고 있었지만, 시간이 지난만큼 시대에 맞추어서 2.x 버전에서 3.x 버전으로 모두 개편되어 있습니다.


그외에 다른 파이썬 서적들도 추가되었으며 파이썬외의 책들도 추가되어 있으므로 다른 분야에 관심있으신 분들도 도움이 될것 같습니다.



반응형


국내 라디오 방송을 스트리밍으로 들으려면 기본적으로 윈도우에서 전용프로그램을 이용해야 합니다. 리눅스나 맥용 프로그램은 없습니다.

최근 윈도우가 아닌 환경에서 듣는 방법을 알려주는 블로그를 발견했습니다.

http://mielikki.tistory.com/197

발견하고 php 소스를 보니 웹페이지로 만들지 않고 프로그램으로 만들수도 있을것 같아 python 으로 만들어 보기로 했습니다. 간단한 연습겸 httplib 도 좀 써보고 싶어서요.

#!/usr/bin/python

import httplib
import subprocess
import sys

def CreateProcess(command):
    try:
        p = subprocess.Popen(command,shell=True)
    except OSError,e:
        print "oserror"

args = sys.argv

if len(args) < 2 :
    ch = 2
else :
    ch = args[1]

conn = httplib.HTTPConnection('kbs xx주소',80)
conn.request("GET","/xxxxxx/xxxxxxxxxx?id=xxxxx&channel=%s"%ch)
r1 = conn.getresponse()
st = r1.read()
conn.close()

index1 = st.find("mms:")
address = st[index1:]

arg = "totem %s"%address
CreateProcess(arg)

파이썬으로 하니 간단히 되는군요.

간단히 설명하면 httplib 라이브러리로 스트리밍 주소를 얻어서 totem 으로 그 주소를 넘겨 재생하게 하는 방식입니다. 리눅스에서 작성했기에 totem 을 쓰도록 했고 윈도우의 경우엔 조금만 수정해 주면 됩니다.

스트리밍 주소인 mms:// 를 얻었으면 다음부턴 그냥 그걸 쓰면 되지 않느냐고 생각하시겠지만 그렇게 얻은 주소를 나중에 사용하려고 하면 에러가 발생하며 재생이 안됩니다. 제 경우엔 이 프로그램을 써도 가끔 안되는 경우가 있더군요. 그땐 다시 시도해 보면 됩니다.

mms:// 주소를 얻는 부분은 kbs 가 딴지를 걸 경우를 대비해 xxx 로 처리해 두었는데 실제 사용하시겠다면 그 부분을 수정해 주면 되고 실제 주소는 위의 링크를 보시면 아실수 있습니다. 뭐...실제로 딴지를 걸만한 근거가 있는지는 모르겠는데 가급적 성가신일은 피하고 싶어서 그런것이니 양해를 바랍니다. ^^;

사용법은 파일이름을 kbsradio.py 라고 가정하면 .....

kbsradio.py 1
kbsradio.py 2


이런식으로 1 채널과 2채널을 선택해 주면 됩니다. 만일 뒤의 인자가 없을 경우 2 채널로 연결됩니다.

나중에 kbs에서 연결방식을 바뀌게 되면 언제든 이 프로그램은 작동하지 않을수 있습니다.

 

반응형

영문사이트 입니다.
좀 잘 알려져있는 Dive Into Python 3 입니다. 웹에서 바로 보실 수도 있고 사이트에서 HTML버전과 PDF 버전을 받아 보실 수도 있습니다.

http://diveintopython3.org/

python 3 버전이 나온지 좀 되었는데 아직 많이 사용되는건 2.6 버전쪽인것 같습니다. 3 버전은 좀 바뀐점도 여럿있다보니...wxpython 도 아직 2.6버전용만 있고 3 버전용은 없더군요.



이책의 2.x 버전용은 한글로 번역이 되어 있는데요.

http://wikidocs.net/mybook/read/index?pageid=4969

여기서 보실수 있습니다.


2013년 12월 13일 수정사항

지금은 링크가 많이 바뀌어 있더군요. 그래서 링크를 수정한 새로운 포스팅을 해 두었습니다.

새로운 포스팅 링크



반응형
강좌라고 해야 할지 전자책이라고 해야 할지 e-book이라고 해야 할지......

예전에 제가 구입했던 python 책이 바로 jump to python 이란 책이었습니다. 나름대로 쉽고 잘 쓰여진 책이라고 생각합니다.

그 책의 저자분께서 파이썬으로 만든 위키독스 라는 서비스를 오픈하셨습니다. 웹상에서 책을 만들수 있는 서비스입니다. 그리고 자신의 jump to python의 2nd edition을 위키독스에서 만들어 공개하고 계십니다. 링크는 여기 입니다.

파이썬을 배우고 싶으신 분들에게 상당히 도움이 될 것 같습니다.

여러 스크립트 언어들이 있지만 현재로서는 파이썬이 이용하기에 가장 범용적이고 유용한것 같습니다. 루비도 언어적으로 맘에들긴 하지만 웹프레임워크인 루비온 레일즈 외에는 그다지 범용적으로 쓰이지는 못하고 있습니다. 아직 파이썬 만큼의 다양한 라이브러리들을 갖추지 못하고 있기도 하고요. 물론 양으로 보자면 Perl이 가장 막강하긴 합니다만........

유용한 python 자료를 공개해주신 저자분께 감사드립니다...

+ Recent posts