2014年9月26日金曜日

開発環境

Head First C ―頭とからだで覚えるCの基本(David Griffiths (著)、Dawn Griffiths (著) 中田 秀基(監訳)(翻訳)、木下 哲也 (翻訳)、オライリージャパン)の11章(ソケットとネットワーキング: 127.0.0.1という場所はない)、自分で考えてみよう(p.473)をpythonで考えてみる。

自分で考えてみよう(p.473)

コード(BBEdit, Emacs)

sample509.py

#!/usr/bin/env python3
#-*- coding: utf-8 -*-

import socket
import random

advice = ["食べる量を減らしなさい\r\n",
          "タイトなジーズにしなさい。\r\n"]
listener_d = socket.socket()

host = ''
port = 30000
address = (host, port)
listener_d.bind(address)

listener_d.listen(10)

print('接続を待っています。')
connect_d, (hostaddr, port) = listener_d.accept()

msg = advice[random.randrange(len(advice))]
connect_d.send(msg.encode(encoding='utf-8'))

connect_d.close()

入出力結果(Terminal, IPython)

サーバー

$ ./sample473.py
接続を待っています。
$

クライアント

$ telnet 127.0.0.1 30000
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
タイトなジーズにしなさい。
Connection closed by foreign host.
$

0 コメント:

コメントを投稿