一、套接字编程:
- 函数的功能基本和c类似,唯一不同的地方在于当发生错误时,它不是通过返回值来告知的,而是通过触发异常,所以udp中的bind, recvfrom, sendto必须要进行捕捉异常。
- 套接字在垃圾收集的时候也会关闭。
- 获取网卡的IP:
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
return socket.inet_ntoa(fcntl.ioctl(s.fileno(), 0X8915, struct.pack('256s', ethname[:15]))[20:24])
复制代码
二、字符串的使用
- Python的字符串是不可以改变的。但是你可以操作字符串以形成新的字符串。
- 字符串中删除一个字串。没有直接提供这个方法,但是replace可以实现:
"abc def".replace(" ", "")
复制代码
同样的功能还有一个方法:translate。它的原有作用是将字符串中的某个字符替换为另外一个字符,注意,不是字符串。它的第一个参数是一个转换表。第二个参数是要删除的字符串。我们可以利用第二个参数del,实现这个功能。同时,第一个参数设置为None。
translate可能更高效一点。另外,它的第二个参数可以使一个字符串,含有多个字符,这样就会删除多个。
注意: translate方法不会对这个字符串操作,而是返回一个新的字符串。
-
strip方法:去除字符串两侧的空格,返回新的字符串。这个功能非常有用。
-
str中有一个函数,format ,非常强大,有时间一定要看一下。
-
endswitch:检查字符串是否已某字符串结尾。startswith:检查是否已某字符串开头。
-
partition:它将字符串按指定的字符串分为三个部分,返回一个元组。第一个是指定字符串前面内容,第二个是指定字符串ÿ