python最佳实践:在python包中的何处存储和如何运行实验代码?

2024-05-20 23:03:43 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我有一个简单的包,如下所示:

Folder PATH listing
Volume serial number is 986C-80E1
C:.
│   setup.py
│
└───funniest
        funniest.py
        __init__.py

setup.py包含以下代码:

import setuptools

setuptools.setup(
  name='test',
  scripts=['bin/funniest-joke'],
  packages=setuptools.find_packages()
)

funniest/funniest.py包含以下代码:

joke = "a funny joke"

funniest/__init__.py包含以下代码:

from .funniest import joke

现在,假设我想将一个名为add的函数添加到funniest/funniest.py,但我还不确定如何添加两个数字,所以我想做一点实验

首先,我在根文件夹中打开我的解释器并开始玩。我发现print(1+1)给出了2。我还发现f = lambda x: x定义了一个函数,当我执行f('hello')时,我返回'hello'。我对自己非常满意,也担心自己会忘记刚刚学到的东西,我决定将其提交到一个名为experiment.py的文件中。我设想该文件包含以下内容:

#experiment.py
print(1+1)
f = lambda x: x

然而,我不希望这个文件成为我的官方软件包的一部分,只是我目前正在玩的东西

我的问题是:我应该把文件放在哪里。我知道我可以把它放在任何地方并使用python $file_location运行,但我需要一个更好的答案,该答案考虑了以下几点:

  • 最佳python编码实践
  • 我不希望该文件干扰我的包结构或setuptools。也就是说pip install .pip install -e .仍然有效。理想情况下,我希望使用一个由setuptools或其他官方python源代码设计的范式

已经使用过Linux/Ubuntu,我知道setuptools已经提供了一个名为command line scripts的极好的解决方案。然而,正如aprevious question所指出的,这些在windows上不起作用,而我恰好在windows上


Tags: 文件lambda函数代码pyimporthelloinit