Python网络编程案例一

一、Sockets, IPv4, and Simple Client/Server Programming

本章通过一些简单的案例介绍Python的核心网络库。 Python的套接字模块具有基于类和基于实例的实用程序。基于类和基于实例的方法之间的区别在于前者不需要套接字对象的实例。 例如,为了打印机器的IP地址,您不需要套接字对象。 相反,您可以只调用套接字的基于类的方法。 另一方面,如果需要将某些数据发送到服务器应用程序,则创建套接字对象以执行该显式操作更为直观。 

例1:打印本机名与IP地址:

import socket
host_name =  socket.gethostname()
host_ip = socket.gethostbyname(host_name)
print("Host name: ", host_name)
print("IP address:", host_ip)

扩展:__main__ 模块(注意是四个_)

Python不同于C/C++,程序执行并不需要主程序,如main(),而是文件自上而下的执行。
但很多Python程序中都有这样的语句

if __name__ == '__main__':
    statements

这段代码的主要作用主要是让该python文件既可以独立运行,也可以当做模块导入到其他文件。当导入到其他的脚本文件的时候,此时__name__的名字其实是导入模块的名字,不是'__main__', main代码里面的就不执行了。

比如写一个程序test_main.py:

def fun():
    print 'This is function'
if __name__ == '__main__':
    fun()
    print 'This is main'

执行程序得到结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值