小编ppp*_*ery的帖子

在magento2中运行时设置包和主题

我的包名 - 公司和我的主题名称是web.我有其他包命名为系统和主题的包是组件.

从块文件运行时我想在magento2中从前端设置该主题和包.

任何帮助将不胜感激.

提前致谢.

magento2

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

Python 的 difflib SequenceMatcher 加速

我正在使用 difflib SequenceMatcher(ratio() 方法)来定义文本文件之间的相似性。虽然 difflib 比较一小组文本文件的速度相对较快,例如 10 个 70 kb 的文件平均相互比较(46 次比较)需要大约 80 秒。

这里的问题是我收集了 3000 个 txt 文件(平均 75 kb),对 SequenceMatcher 完成比较工作需要多长时间的原始估计是 80 天!

我尝试了“real_quick_ratio()”和“quick_ratio()”方法,但它们不适合我们的需求。

有没有办法加快比较过程?如果没有,有没有其他更快的方法来完成这样的任务?即使它不在 Python 中。

python performance difflib python-2.7

4
推荐指数
3
解决办法
4123
查看次数

Source Insight //TODO 评论

我最近开始使用 Source Insight,为了获得正确的 //TODO - 注释,您需要编写// TODO (带有额外的空格)。

我尝试在配置中查找删除此额外空间的方法,但找不到它,并且无法习惯用额外空间编写它。

有办法解决这个问题吗?还是应该拥抱这一点,然后慢慢地,学会珍惜?

c++ source-insight

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

PyGame 中的模糊

我正在 PyGame 中做一个简短的介绍,我需要模糊一些静态线条。经过两天的搜索,我找不到任何东西。

PyGame 是否具有模糊形状或表面的内置方法?我需要手动完成吗?解决这个问题的最佳方法是什么?

澄清一下,我不是在寻找运动模糊——我只需要一个简单的就地模糊,几乎就像一个发光的效果。

python graphics pygame 2d

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

如何使用仅包含 pyc 文件的 PyPy2 运行 Python 包?

使用 CPython2 我可以编译我的 Python 源代码包python.exe -c "import mypackage"*.py递归删除所有文件后,我可以简单地导入它import mypackage并像往常一样使用它。

使用 CPython3 我可以编译我的 Python 源代码 pyckage python.exe -m compileall -b "full/path/to/mypackage"*.py递归删除所有文件后,我可以简单地使用import mypackage. 并像往常一样使用它。

这甚至可以以完全相同的方式使用 PyPy3 来完成。

令人惊讶的是,当使用 PyPy2 时,这不起作用!

编译和删除源文件后,我得到以下输出:

Python 2.7.13 (9112c8071614, Feb 06 2019, 23:10:08)
[PyPy 7.0.0 with MSC v.1500 32 bit] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>> import mypackage
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: …
Run Code Online (Sandbox Code Playgroud)

python pypy cpython

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

如何在Mac终端安装geckodriver?权限、操作不允许和无此类文件目录错误

尝试在 Mac 上为 Mozilla firefox 安装 geckodriver。我认为在使用 pip 和 sudo pip 重新安装一百万种方式后我已经正确安装了 selenium,但是当我尝试使用“mv geckodriver /usr/local/bin”或“mv geckodriver /usr/bin”安装 geckodriver 时,出现错误。该错误过去显示“不允许操作”或给出权限错误,但现在显示“没有此类文件或目录”。旧表格的答案似乎已经过时,或者旧的尝试可能会给其他表格带来问题。

我尝试使用复制文件sudo cp /path/to/geckodriver /usr/local/bin,但在输入密码后,我再次收到“没有此类文件或目录”消息。

有新方法可以做到这一点吗?我尝试了多种形式,但它们只会导致新问题和过时的解决方案。

旁注:安装 geckodriver 时,我将其放置在桌面上。我正在尝试模仿本教程https://www.youtube.com/watch?v=BGU2X5lrz9M (视频中的 4:44),这使得它看起来像下载到桌面然后输入一样简单,cd Desktop/ 但这mv geckodriver /usr/local/bin显然不是在职的。

最新尝试:

Brandons-MacBook-Pro-3:~ Brandon$ sudo pip install -U selenium 
Password: 
WARNING: The directory '/Users/Brandon/Library/Caches/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing …
Run Code Online (Sandbox Code Playgroud)

python macos terminal selenium geckodriver

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

可取消的异步键盘输入

我正在尝试编写一个并发的Python程序,asyncio它也接受键盘输入。当我尝试关闭程序时出现问题。由于键盘输入最终是通过 完成的sys.stdin.readline,因此该函数仅在我按下 后返回ENTER,无论我是stop()事件循环还是cancel()函数的Future

有什么办法可以提供asyncio可以取消的键盘输入吗?

这是我的 MWE。它将接受键盘输入 1 秒,然后stop()

import asyncio
import sys

async def console_input_loop():
    while True:
        inp = await loop.run_in_executor(None, sys.stdin.readline)
        print(f"[{inp.strip()}]")

async def sleeper():
    await asyncio.sleep(1)
    print("stop")
    loop.stop()

loop = asyncio.get_event_loop()
loop.create_task(console_input_loop())
loop.create_task(sleeper())
loop.run_forever()
Run Code Online (Sandbox Code Playgroud)

python python-asyncio

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

从内存发送图像

我正在尝试为 Discord 机器人实现一个系统,该系统动态修改图像并将它们发送给机器人用户。为此,我决定使用 Pillow (PIL) 库,因为它对于我的目的来说似乎简单明了。

这是我的工作代码示例。它加载一个示例图像,作为测试修改,在其上绘制两条对角线,并将图像输出为 Discord 消息:

# Open source image
img = Image.open('example_image.png')

# Modify image
draw = ImageDraw.Draw(img)
draw.line((0, 0) + img.size, fill=128)
draw.line((0, img.size[1], img.size[0], 0), fill=128)

# Save to disk and create discord file object
img.save('tmp.png', format='PNG')
file = discord.File(open('tmp.png', 'rb'))

# Send picture as message
await message.channel.send("Test", file=file)
Run Code Online (Sandbox Code Playgroud)

这会导致来自我的机器人的以下消息:

结果与编辑后的图像不一致

这有效; 但是,我想省略将图像保存到硬盘驱动器并再次加载它的步骤,因为这似乎效率低下且不必要。经过一些谷歌搜索后,我遇到了以下解决方案;但是,它似乎不起作用:

# Save to disk and create discord file object
# img.save('tmp.png', format='PNG')
# file = discord.File(open('tmp.png', 'rb'))

# Save to memory and …
Run Code Online (Sandbox Code Playgroud)

python byte python-imaging-library discord.py

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

从 Python sub/sub-sub-directory 模块引用 Hydra 的 `conf` 目录

假设我们有一个具有以下结构的 Python 项目:

\n
hydra_config\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 conf\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 api_key\n\xe2\x94\x82   \xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 non_prod.yaml\n\xe2\x94\x82   \xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 prod.yaml\n\xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 db\n\xe2\x94\x82       \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 mysql.yaml\n\xe2\x94\x82       \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 postgresql.yaml\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 modules\n\xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 module.py\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 my_app.py\n
Run Code Online (Sandbox Code Playgroud)\n

现在,在 Hydra 的配置文档中,他们指出我们需要在我们想要访问配置文件的函数之上添加一个 Python 装饰器。my_app.py但是,文档仅展示了如何对项目主模块的函数执行此操作。

\n

问题是,如何添加

\n
@hydra.main(config_path="conf")\n
Run Code Online (Sandbox Code Playgroud)\n

函数的 Python 装饰器,假设module_function哪个位于modules/module.py? 以下是 的内容module.py

\n
import hydra\nfrom omegaconf import DictConfig, OmegaConf\n\n@hydra.main(config_path="conf")\ndef module_function(cfg: DictConfig):\n    print(OmegaConf.to_yaml(cfg))\n
Run Code Online (Sandbox Code Playgroud)\n

下面是主要Python模块的内容my_app.py

\n
from modules.module import module_function\n\ndef main():\n    module_function()\n\nif __name__ == "__main__":\n    main()\n
Run Code Online (Sandbox Code Playgroud)\n

当我尝试使用 运行主 Python 模块时my_app.py, …

python config path fb-hydra

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

Python式的“或”运算

在 python 中,我可以编写一个类似的表达式3 < a < 10,并且它会根据and条件进行评估。

也就是说,3 < a < 10 是一个语法糖:3 < a and a < 10

是否有类似的Pythonic方式将其写为or条件?

python comparison-operators python-3.x

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