小编Cra*_*ony的帖子

Python无法找到我的模块

我有一个python项目(我在virtualenv中运行),它具有以下结构:

Project
????.git
????venv
????src
    ????__init__.py
    ????mymodules
    ?   ????__init__.py
    ?   ????module1.py
    ?   ????module2.py
    ????scripts
        ????__init__.py
        ????script.py
Run Code Online (Sandbox Code Playgroud)

script.py

import src.mymodules.module1
...
Run Code Online (Sandbox Code Playgroud)

我使用以下命令激活venv并从Project目录运行项目:

(venv)$ python src/scripts/script.py
Run Code Online (Sandbox Code Playgroud)

该脚本运行但在退出之前发出以下错误:

Traceback (most recent call last):
  File "src/scripts/script.py", line 1, in <module>
    import src.mymodules.module1
ImportError: No module named src.mymodules.module1
Run Code Online (Sandbox Code Playgroud)

我已经尝试运行python shell并尝试从那里导入模块,它没有给出任何错误.我在src中的每个目录中都有_ _init__.py.python是否将工作目录视为src/scripts?为什么会发生这种情况?如果是这种情况,如何将src作为工作目录?

python packages path

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

在Python的循环中,我将一个类的新实例分配给同一个变量,但是它一直指向旧实例?

我创建了以下类,表示可以存储玩具(数字)的箱子:

class Chest:

  toys = []

  def __init__(self):
    return

  def add(self, num):
    self.toys.append(num)
    return
Run Code Online (Sandbox Code Playgroud)

使用此类的主要代码如下:

room_of_chests = []

for i in range(3):

  print "Chest", i
  temp = Chest()

  print "Number of toys in the chest:", len(temp.toys)

  for j in range(5):
    temp.add(j)

  print "Number of toys in the chest:", len(temp.toys)
  print ""

  room_of_chests.append(temp)
Run Code Online (Sandbox Code Playgroud)

因此,对于i的每次迭代,我创建一个新的Chest并使变量temp指向它(正确吗?).所以,从理论上讲,在每次迭代中,temp都会以空胸开始,并以5个玩具的胸部结束(正确吗?).

因此,我期望的输出是:

Chest 0
Number of toys in the chest: 0
Number of toys in the chest: 5

Chest 1
Number of toys in …
Run Code Online (Sandbox Code Playgroud)

python class object instantiation

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

如何在目标C中表示无穷大?

有没有办法在目标C中表示无穷大(如浮点数/双数,或NSN数等)?换句话说,是否有一个float/double/NSNumber值总是大于目标C中的任何其他值?

objective-c infinity

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

标签 统计

python ×2

class ×1

infinity ×1

instantiation ×1

object ×1

objective-c ×1

packages ×1

path ×1