小编use*_*537的帖子

base64.b64encode错误

我正在尝试加密和解密python中的文本,我知道该怎么做 - 问题是我不想使用一定数量的字母,如16或32.我希望能够使用尽可能多的字母/数字,然后加密文本没有任何错误.

python中的base64会很完美,因为我可以做到这一点,但是当我想做的时候:

password = "password"
encode = base64.b64encode(password)
Run Code Online (Sandbox Code Playgroud)

...它返回一个错误,因为它不是以字节为单位; 它必须像:

encode = base64.b64encode(b'password')
Run Code Online (Sandbox Code Playgroud)

这完全没问题,但我不想这样做.

import base64

password = "hello world"  
encoded = base64.b64encode(password.encode("utf-8"))
print(encoded)
decoded = base64.b64decode(encoded)
print(decoded)
Run Code Online (Sandbox Code Playgroud)

这是现在我的代码,它工作正常,但我现在知道我正在使用错误的类型,我需要知道如何使用AES.

python python-3.x

8
推荐指数
1
解决办法
2万
查看次数

Pygame属性,init()

我正试图在我的Windows 8笔记本电脑上使用Pygame和Python 3.3.Pygame安装得很好,当我import pygame进口也很好.虽然当我尝试执行这个小代码时:

import pygame

pygame.init()

size=[700,500]
screen=pygame.display.set_mode(size)
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

Traceback (most recent call last):
  File "C:\Users\name\documents\python\pygame_example.py", line 3, in <module>
    pygame.init()
AttributeError: 'module' object has no attribute 'init'
Run Code Online (Sandbox Code Playgroud)

我曾经pygame-1.9.2a0-hg_56e0eadfc267.win32-py3.3安装过Pygame.Pygame安装在这个位置'C:\ PythonX'中,Python 3.3安装在这个位置'C:\ Python33'中.我看过其他人有相同或类似的问题,似乎没有解决错误.安装Pygame时我做错了什么吗?或者它不支持Windows 8?

python pygame python-3.3

2
推荐指数
2
解决办法
2万
查看次数

python套接字和socketserver

我一直在尝试制作一个多客户端服务器,并且最终可以正常运行,但是我现在要做的是代替获取客户端地址,让客户端输入名称,然后程序会说“鲍勃:嗨,大家好”,而不是“ 127.0.0.1:嗨,大家好”。

我使用了python文档中的预制服务器和客户端。这是服务器:

import socketserver

class MyUDPHandler(socketserver.BaseRequestHandler):


    def handle(self):
        data = self.request[0].strip()
        name = self.request[0].strip()
        socket = self.request[1]
        print(name,"wrote:".format(self.client_address[0]))
        print(data)
        socket.sendto(data.upper(), self.client_address)

if __name__ == "__main__":
    HOST, PORT = "localhost", 9999
    server = socketserver.UDPServer((HOST, PORT), MyUDPHandler)
    server.serve_forever()
Run Code Online (Sandbox Code Playgroud)

这是客户:

import socket
import sys

HOST, PORT = "localhost", 9999
data = "".join(sys.argv[1:])
name = "".join(sys.argv[1:])


sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

sock.sendto(bytes(name + "Bob", 'utf-8'), (HOST, PORT))
sock.sendto(bytes(data + "hello my name is Bob", "utf-8"), (HOST, PORT))
received = str(sock.recv(1024), "utf-8")

print("Sent:     {}".format(data))
print("Received: …
Run Code Online (Sandbox Code Playgroud)

python sockets client socketserver

1
推荐指数
1
解决办法
3636
查看次数

将十进制数添加到十进制数不能在python中正常工作

我正在尝试将十进制数字添加到十进制数字并且它正常工作,但是当我这样做时,1.1 + 0.1我得到1.2000000000000002但是我希望它等于是1.2.当我这样做的时候,1.0 + 0.1我会得到1.1哪个是完美的,但我不会那样做1.1 + 0.1.那么有什么方法可以摆脱000000000000002来自1.2000000000000002

谢谢.

python numbers decimal

1
推荐指数
2
解决办法
1万
查看次数

当鼠标悬停在它上面时,tkinter Radiobutton会被选中

我在tkinter中使用Radiobuttons,我可以选择它们很好但是当鼠标悬停在其中一个选项上时,它会被选中,而我实际上没有点击鼠标左键.我已经看过将Radiobutton的状态改为禁用但显然我不能选择被禁用的选项而且我也使用了deselect和select方法而且它们不会阻止鼠标选择当它悬停在它上面时的选项.有没有办法在我使用鼠标单击之前停止鼠标选择选项?

谢谢

这是代码:

    var1 = IntVar()
    self.u1r1 = Radiobutton(self, text = 'Passed', value = 1, variable = var1)
    self.u1r1.grid(row = 0, column = 0, sticky = W)
    self.u1r2 = Radiobutton(self, text = 'Not Passed', value = 2, variable = var1)
    self.u1r2.grid(row = 0, column = 0, sticky = W, padx = 60)
    self.u1r3 = Radiobutton(self, text = 'Waiting', value = 3, variable = var1)
    self.u1r3.grid(row = 0, column = 0, sticky = W, padx = 145)
Run Code Online (Sandbox Code Playgroud)

python tkinter radio-button

0
推荐指数
1
解决办法
2108
查看次数

使用指针进行数组复制的数组

我正在尝试将一些元素从一个数组复制到另一个数组,并且它确实有效,但是当指针只指向一个元素时,它会复制整个数组.这是代码:

char buffer[64], buffer1[2];
char* pointer;
strcpy(buffer, "Word");

pointer = buffer1; 
*pointer = buffer[0];
printf("%c\n", *pointer);

printf("%s\n", buffer1);
Run Code Online (Sandbox Code Playgroud)

当我打印到指向控制台的*指针时,我得到"W"但是当我将缓冲区1打印到控制台时,我得到了"W",这怎么可能呢?它只能采取两个元素?

c++ arrays

0
推荐指数
1
解决办法
61
查看次数