鱼C论坛

 找回密码
 立即注册
查看: 1280|回复: 8

[已解决]python socket问题

[复制链接]
发表于 2022-3-23 20:56:22 | 显示全部楼层 |阅读模式
10鱼币
代码只有部分,不是很重要,重要的是问题!!!
代码如下图:

代码

代码


我的问题是:我有两个循环,每个循环中都有一个socket接收数据,但是为什么第二次循环中接收的数据全是第一次循环的末尾的一个值?望大家帮忙解答一下,网络编程太久没有看过了,忘记了。
最佳答案
2022-3-23 20:56:23
你说的第二次循环是什么意思,不是很明白你想表达什么?

最佳答案

查看完整内容

你说的第二次循环是什么意思,不是很明白你想表达什么?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-3-23 20:56:23 | 显示全部楼层    本楼为最佳答案   
你说的第二次循环是什么意思,不是很明白你想表达什么?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2022-3-23 21:00:44 | 显示全部楼层
伪代码如下:
while 100:
    socket.recvfrom(1024)

while 1200:
    socket.recvfrom(1024)

第一次的100次循环,接收的数据正常,
但是第二次循环接收的1200个数据全为第一次接收的末尾值
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2022-3-23 21:01:16 | 显示全部楼层
isdkz 发表于 2022-3-23 20:59
你说的第二次循环是什么意思,不是很明白你想表达什么?


伪代码如下:
while 100:
    socket.recvfrom(1024)

while 1200:
    socket.recvfrom(1024)

第一次的100次循环,接收的数据正常,
但是第二次循环接收的1200个数据全为第一次接收的末尾值
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-3-23 21:03:56 | 显示全部楼层
自学小白菜 发表于 2022-3-23 21:01
伪代码如下:
while 100:
    socket.recvfrom(1024)

你是不是发的消息超过了 1024 个字节?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2022-3-23 21:08:06 | 显示全部楼层
isdkz 发表于 2022-3-23 21:03
你是不是发的消息超过了 1024 个字节?

应该不是,因为我接受的数据都来自另外一个软件,发送的数据都是类似的,如果超过1024字节的话,那么第一个循环应该也不行才对。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2022-3-23 21:11:12 | 显示全部楼层
isdkz 发表于 2022-3-23 21:03
你是不是发的消息超过了 1024 个字节?

我已经解决了,是自己代码有点问题,还是谢谢你了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-3-23 21:13:41 | 显示全部楼层
自学小白菜 发表于 2022-3-23 21:11
我已经解决了,是自己代码有点问题,还是谢谢你了

好吧,我想不通,应该断包粘包才会有这种问题的呀,

可是你的是 udp,udp 应该不会出现粘包的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2022-3-23 21:27:44 | 显示全部楼层
isdkz 发表于 2022-3-23 21:13
好吧,我想不通,应该断包粘包才会有这种问题的呀,

可是你的是 udp,udp 应该不会出现粘包 ...

我也想过这些原因的,实在也是想不明白为什么第二个循环数据居然会一样,然后我又仔细的看了一遍代码,发现我第二个接收数据的列表写成了第一个,哈哈,
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-12 01:42

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表