日报4.18

用udp客户端实现与网络调试助手的udp服务端亓行聊天功能

写一个无限循环

  • 客户端先发消息
  • 收后服务端的回应
  • 客户再发消息
  • 再收回应

写一个udp的服务端

  • 绑定端口
  • 先收消息,再回消息

1555571131974

写一个tcp的客户端

tcp服务端

1555578029797

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()
    

    random模块

导入

import random

随机整数

包括最大值,不可加步长

random.randint(最小值,最大值)

不包括最大值,但可以给步长

random.randrange(最小值,最大值,步长)

随机选择一个返回

random.choice(列表)

随机取多个返回

随机取多个,返回结果是列表

random.sample(列表,取几个)

打乱顺序

用于洗牌,会改变列表自身数据

random.shuffle(列表)

作业生成验证码

随机生成八位数验证码

提示

利用一下ascii

chr(ascii码值) 可得到 对应的字符

目标,需要获得一个八位的由数字和字母组成的随机验证码

0-9

大写的A-Z 65-90

小写的a-z 97-122

方法一

完全随机

  • 做一个列表
    • 先取数字
    • 取大写字母
    • 取小写字线
  • 随机取多个

方法二

数字多

num=[0,1,2,3,4,5,6,7,8,9,chr(random.randint(65,90)),chr(random.randint(97,122))]
s=random.sample(num,8)
print(s)

方法三

数字,大写字母,小写字母出现机会均等

import random

i = 0
rand_char = ""
while i < 8:
    # 随机一个大写字母
    big_char = chr(random.randint(65, 90))
    # 随机一个小写字母
    small_char = chr(random.randint(97, 122))
    # 随机一个整数
    int_char = str(random.randint(0,9))
    # 三个组成列表
    char_list = [big_char, small_char, int_char]
    # 从列表中随机出来一个
    get_char = random.choice(char_list)
    # 重复八次上面的操作
    rand_char += get_char

    i += 1

print(rand_char)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值