每日日报

P地址查询

windows

cmd 命令提示符下

ipconfig

在终端

ifconfig

IP地址的分类

  • ipv4
  • ipv6

分类寻址

IPV4被分为五大类:ABCDE

A类为:点分四组中的第一组地址范围为0~127的IP地址。已二进制来看就是“首位为0”

B类:128~191.二进制首位为10

C类:192~223.二进制首位为110

D类:224~239.二进制首位为1110

E类:240~255.二进制首位为1111

二进制

数据逢二进一

十进制 二进制
0 0
1 1
2 10
3 11
4 100
5 101
6 110
7 111
8 1000

进制转换

十进制转换为二,八,十六进制的方法

num = 15  # 进制的转换

m = bin(num)  # 十制制转二进制
print(m)
ba = oct(num)   # 十进制转八进制
print(ba)
sl = hex(num)   # 十进制转十六进制
print(sl)

结果

0b1111
0o17
0xf

udp通信

udp收发消息

  • 创建套接字

    udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    
  • 发消息

    udp_socket.sendto(bytes类型数据,(IP地址字符串,端口整数型))
    
    • 方法记忆

      send , 发送
      to ,给

  • 收消息

    udp_socket.recvfrom(字节数)
    
    • 返回值,元组

    (bytes数据,(str发件方的ip,int发件方的端口))

    • 方法记忆

      recv, receive,接收
      from,来自

    • 该方法的特点:

      会卡住
      阻塞

  • 关闭套接字

    udp_socket.close()
    

文件的编码

  • ascii
  • unicode
  • utf-8

数据类型的转换

str转bytes

变量 = str对象.encode(编码格式)

byte转str

变量 = bytes对象.decode(编码格式)

示例

a = "好"
print(a, type(a),"a")
b = a.encode("utf8")
print(b, type(b),"b")

c = b.decode("utf8")
print(c, type(c),"c")

效果

C:\Users\python_hui\Anaconda3\python.exe G:/untitled2/28/03udp/3.py
好 <class 'str'> a
b'\xe5\xa5\xbd' <class 'bytes'> b
好 <class 'str'> c

Process finished with exit code 0

tcp通信

客户端

  • 创建tcp套接字

    tcp_client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    
  • 连接服务器

    tcp_client.connect((str服务器ip, int端口))
    
  • 客户端先发消息

    tcp_client.send(bytes数据)
    
  • 客户端收消息

    tcp_client.recv(接收字节数)
    
  • 关闭套接字

    tcp_client.close()
    

猜你喜欢

转载自blog.csdn.net/abcdhulei/article/details/89388101