如您所知,我们可以将字符串/数字变量保存到如下文件中:
with open("file.txt", "w") as file:
file.write(
str(some_variable)
)
但有些对象,例如,code当转换为字符串形式时,看起来像<code object <module> at 0x0123456789ABCDEF, file "file", line 1>.是否有可能以任何方式将此类类型写入文件?
如您所知,我们可以将字符串/数字变量保存到如下文件中:
with open("file.txt", "w") as file:
file.write(
str(some_variable)
)
但有些对象,例如,code当转换为字符串形式时,看起来像<code object <module> at 0x0123456789ABCDEF, file "file", line 1>.是否有可能以任何方式将此类类型写入文件?
这个问题听起来可能很奇怪,但我不知道如何重新表述。假设我们有一个列表:
lst = [1, 2, 3, 4, 5]
我知道使用 pprint 可以获得不错的输出:
pprint(lst)
...
[
1,
2,
3,
4,
5
]
但是是否有可能以某种方式获得与字符串相同的结果,例如,如下所示:
beauty_lst = pprint_return(lst)
print(beauty_lst)
...
[
1,
2,
3,
4,
5
]
我想用 python 创建一个邮件服务器。当我用Google搜索时,我只找到了inbox.py,它没有正常的文档。您能为收件箱推荐另一个库或文档吗?
我有一个域名和主机
我最近买了一个arduino pro micro。我现在想做 badusb (出于学习目的)。我需要以某种方式将文件传输到受害者的电脑,但我不知道该怎么做。是否可以在运行 Windows 10 的 PC 上以某种方式创建一个二进制文件或 exe,其内容预先记录在 Arduino 中?也许这可以通过将可执行文件编码为 Base64,然后在受害者的机器上解码来完成?我想做到这一点,而不是从某个地方下载它,而是在本地创建它。如果我在技术部分犯了错误,我很抱歉,我还没有研究过这个主题。
ps我尝试这样做:
echo "exe, декодированный в base64">>test123.txt & certutil -encode test123.txt out.exe
如果我在 cmd 中运行它,我会得到:
尽管在重新编码之前,相同的文件运行没有任何问题。我向更聪明的人寻求帮助。
大家好。开门见山:我正在 pygame 中编写一个游戏,我有一个继承自 pygame.sprite.Sprite 的敌人类(下面的类)
import pygame
import random
import time
from threading import Thread, Lock
from random import choices
from main import damage
class BaseEnemy(pygame.sprite.Sprite):
def __init__(self, image="res/textures/base_texture.png", speed_arr=(1000, 5), starter_pose=(1920/2, 1080/2), phb=None, r=50, d=10, reward=10):
# phb - player_heal_bar (Не подумайте что-то не то), r - radius, d - damage
pygame.sprite.Sprite.__init__(self)
try:
self.image = pygame.image.load(image).convert_alpha()
except:
image = "res/textures/base_texture.png"
self.image = pygame.image.load(image).convert_alpha()
self.image.set_colorkey((255, 255, 255))
self.rect = self.image.get_rect()
self.upd = Thread(target=self.update, args=[phb, r, d])
self.upd.start()
self.speed_arr = speed_arr
self.rect.center = starter_pose
self.starter = starter_pose
self.reward = reward
self.alive = True
def update(self, phb, r, d):
while self.alive:
try:
time.sleep(0.17)
t_x = self.rect.center[0]
t_y = self.rect.center[1]
for i in range(self.speed_arr[0]):
self.rect.x += random.randint(-self.speed_arr[1], self.speed_arr[1])
self.rect.y += random.randint(-self.speed_arr[1], self.speed_arr[1])
if self.rect.center[0] < 0:
self.rect.center = (random.randint(1000, 1900), random.randint(500, 1000))
if self.rect.center[0] > 1920:
self.rect.center = (random.randint(1000, 1900), random.randint(500, 1000))
if self.rect.center[1] < 0:
self.rect.center = (random.randint(1000, 1900), random.randint(500, 1000))
if self.rect.center[1] > 1080:
self.rect.center = (random.randint(1000, 1900), random.randint(500, 1000))
damage(choices([d, 0], weights=[.01, .99]), phb)
except Exception as e:
print(e)
self.kill()
break
def checker(self, phb, r, ev):
if self.rect.colliderect(pygame.Rect(int(pygame.mouse.get_pos()[0] - r/2), int(pygame.mouse.get_pos()[1] - r/2), r, r)):
if pygame.MOUSEBUTTONDOWN in list(map(lambda x: x.type, ev)):
self.kill()
phb.add_cash(self.reward)
try:
self.image = pygame.image.load("res/textures/killed.png").convert_alpha()
except:
image = "res/textures/base_texture.png"
self.image = pygame.image.load(image).convert_alpha()
self.alive = False
是的,我知道,也许有些东西写错了,有些东西完全没有必要,但我有我有的。所以就是这样。我需要在kill()方法中添加一行,但我真的不想从头开始重新定义它。如何继承一个方法?是否有可能做到这一点?
PS 如果有其他人知道,请告诉我如何让精灵移动得更流畅。 (更新()方法)
谢谢你的帮助!