小编Mat*_*hew的帖子

弃用警告:

我试图遵循这个问题的答案,试图复制到剪贴板,但是答案中提供的所有解决方案似乎都让我失败。在 macOS 上,我已成功使用 pyperclip 和 subprocess.run 复制到剪贴板,如链接文章中所述,但是在 centOS 上都不起作用。我也尝试过在 macOS 上使用 Tkinter,但是当我运行以下简单代码时:

  from tkinter import Tk
  r = Tk()
Run Code Online (Sandbox Code Playgroud)

我收到以下弃用警告:

DEPRECATION WARNING: The system version of Tk is deprecated and may be removed in a future release. Please don't rely on it. Set TK_SILENCE_DEPRECATION=1 to suppress this warning.
Run Code Online (Sandbox Code Playgroud)

我真的不想用已弃用的依赖项构建我的应用程序,但是看到 centOS 不支持 pyperclip 或 subprocess.run 我觉得我没有其他选择。

具体来说,我想知道是否有一个好的解决方案来解决我的问题,也就是说,我想复制到centOS上的剪贴板,理想情况下,我想要一个可以在“大多数”平台上工作的解决方案。请注意,我使用的是 python3。谢谢

centos tkinter python-3.x

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

github actions 检测秘密是否存在

在我的 GitHub 操作之一中,我想在尝试使用机密之前测试该机密是否存在,以便为用户提供信息更丰富的错误消息。我当前的策略是在操作开始时添加以下步骤:

- name: check if MY_SECRET exists
  run: if [ `echo ${{secrets.MY_SECRET}} | wc -c` -lt 2 ]; then echo the secret \"MY_SECRET\" has not been made; echo please go to \"settings \> secrets \> actions\" to create it; exit 1; fi
Run Code Online (Sandbox Code Playgroud)

这是对没有任何错误处理的改进,因为它阻止了操作的继续,并为用户提供了一些有用的建议,但是我想知道是否有“更好”的解决方案。特别是,GitHub 对于如何处理这种情况有建议吗?例如,我可以调用来自市场的其他操作吗?(我检查了市场,但找不到任何可以做到这一点的东西,但是我可能错过了一些东西)。

在我看来,这就像一个我可能想要经常重用的功能,因此假设没有市场或内置解决方案,我打算制定自己的操作,我可以调用该操作来为我做到这一点。我注意到市场上的很多操作都是在节点中实现的。这被认为比 bash 更好吗?我有什么理由不应该在 bash 中实现此功能吗?

最后,当我在这里处理机密时,我想牢记安全。在提出任何解决方案时请记住这一点。另外,请出于安全考虑批评我当前的解决方案。

github github-actions

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

如何在 mac 上运行 virtualenv python

我正在尝试使用 virtualenv 在我的 mac 上创建一个虚拟的 python 环境。我已经下载了 virtualenv,但是我无法运行它,因为即使我提供了正确的路径,它也找不到我安装 python3 的路径。这是我运行的命令和响应:

virtualenv --python=/usr/local/bin/python3 newfolder
zsh: /usr/local/bin/virtualenv: bad interpreter: /usr/local/opt/python3/bin/python3.6: no such file or directory
Run Code Online (Sandbox Code Playgroud)

我也试过用引号运行命令,如下所示:

virtualenv --python='/usr/local/bin/python3' newfolder
zsh: /usr/local/bin/virtualenv: bad interpreter: /usr/local/opt/python3/bin/python3.6: no such file or directory
Run Code Online (Sandbox Code Playgroud)

请注意,据我所知,我正在提供正确的 python3 路径。
这是我跑步时得到的which python3

which python3
/usr/local/bin/python3
Run Code Online (Sandbox Code Playgroud)

virtualenv 似乎也已正确安装。以下是这方面的证据:

pip3 install virtualenv
Requirement already satisfied: virtualenv in /Users/mathewlewis/Library/Python/3.7/lib/python/site-packages (16.7.9)
Run Code Online (Sandbox Code Playgroud)

另外,如果这是相关的,我目前拥有的软件是 mac os catalina 10.15.2

我不仅想要一个解决方案(正如在这一点上给出的那样),我还想要一个为什么这不起作用的原因。

python macos virtualenv python-3.x

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

强制函数为纯函数

在 C++ 中,可以声明一个函数是 const,这意味着,据我所知,编译器确保函数不会修改对象。在 C++ 中是否有类似的东西我可以要求一个函数是纯函数?如果不是在 C++ 中,是否有一种语言可以满足这一要求?

如果这是不可能的,为什么可以要求函数是 const 而不是要求它们是纯的?这些要求有何不同?

为了清楚起见,我希望没有副作用,并且不使用传递给函数的变量以外的变量。因此,不应该有文件读取或系统调用等。

这是副作用的更清晰定义:

不修改运行程序的计算机上的文件,也不修改函数范围外的变量。除了传递给函数的变量之外,没有其他信息用于计算函数。每次运行该函数时,它都应该返回相同的内容。

注意:我做了更多的研究并遇到了纯脚本 (感谢 jarod42 的评论)

基于对维基百科文章的快速阅读,我的印象是您可以要求纯脚本中的函数是纯函数,但我并不完全确定。

c++

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

查找或构建 python 安全分析器

我想要一个用于 python 的安全分析器。具体来说,我想要一些将 python 程序作为输入的东西,并告诉我该程序是否尝试进行系统调用、读取文件或导入库。如果存在这样的安全分析器,我在哪里可以找到它?如果不存在这样的东西并且我要自己写一个,我可以在哪里“检查”我的分析器(即,验证它是否有效)。

如果您认为这个问题不适合 SO,请告诉我是否还有其他 SE 网站可以发布此问题,或者如果可能的话,我可以如何更改/重新表述我的问题。谢谢

security python-3.x

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

为 bash 安装期望

我已经下载了 expect (来自http://www.tucows.com/preview/8223/Expect)并且在安装时遇到了麻烦。我通常在安装程序时遇到麻烦,所以非常简单的解释会很受欢迎。我是 mac 用户,这很重要。谢谢

installation expect

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

在heroku上运行c++程序

我正在尝试在 Heroku 上运行一个 c++ 程序,我已经阅读了这篇文章:How to run an executable on Heroku from node, 在本地工作,但是我没有设法让它工作,因为服务器上没有 g++ (或 gcc 就此而言)。我尝试像这样将 g++ 下载到服务器上,sudo apt-get install g++但是我没有 root 权限。此外,我尝试将我的 g++ 副本复制到服务器,但我的 mac 与服务器的架构不同,因此也无法正常工作。显然这是可能的,因为它已经在我上面链接的问题中解决了,但是我不知道如何去做。任何帮助表示赞赏。谢谢。

c++ heroku

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

python matplotlib.pyplot log-log绘图点未显示,因为python选择的y范围很差

在以下生成对数图的代码中,python 选择了一个不显示散点图上的点的 x 范围

import matplotlib.pyplot as plt

plt.scatter([.005,.005],[1,2])
plt.xscale('log')
plt.yscale('log')
plt.show()
Run Code Online (Sandbox Code Playgroud)

此外,如果您改为使用以下代码,它可以正常工作:

import matplotlib.pyplot as plt

plt.plot([.005,.005],[1,2])
plt.xscale('log')
plt.yscale('log')
plt.show()
Run Code Online (Sandbox Code Playgroud)

通常 python 会为 x 和 y 值选择一个合适的范围。为什么在这种情况下不呢?

请注意,我知道可以更改 x 和 y 范围,以便不使用默认值。我的问题是专门问为什么在这种情况下 python 没有选择一个好的范围。

谢谢

我似乎这是为什么 matplotlib 需要在 plt.scatter() 之前设置对数刻度而不是 plt.plot() 的副本?

对于阅读本文的任何人,请告诉我是否应该删除此问题,或者您是否会推荐其他内容。谢谢

python matplotlib

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

通过命令行创建私有 github 存储库

我希望能够通过命令行创建一个私人 github 存储库。我认为使用其余 API 应该可以做到这一点,但是我无法从文档中弄清楚如何做到这一点。这可能吗?

api github

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

无法从tensorflow导入keras

我正在尝试使用 keras 但无法使用,因为当我运行时from tensorflow import keras出现此错误:

\n\n
\xe2\x9e\x9c  kerasTutorial python3\nPython 3.7.7 (default, Mar 10 2020, 15:43:33)\n[Clang 11.0.0 (clang-1100.0.33.17)] on darwin\nType "help", "copyright", "credits" or "license" for more information.\n>>> from tensorflow import keras\nTraceback (most recent call last):\n  File "<stdin>", line 1, in <module>\n  File "/usr/local/lib/python3.7/site-packages/tensorflow/__init__.py", line 41, in <module>\n    from tensorflow.python.tools import module_util as _module_util\n  File "/usr/local/lib/python3.7/site-packages/tensorflow/python/__init__.py", line 64, in <module>\n    from tensorflow.python.framework.framework_lib import *  # pylint: disable=redefined-builtin\n  File "/usr/local/lib/python3.7/site-packages/tensorflow/python/framework/framework_lib.py", line 25, in <module>\n    from tensorflow.python.framework.ops import Graph\n  File …
Run Code Online (Sandbox Code Playgroud)

keras tensorflow

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