python - 创建了一个列表,但得到 errorTypeError: 'NoneType' 类型的对象在 python 中没有 len()
问题描述
我收到 TypeError:当我尝试运行 main.py 时,'NoneType' 类型的对象没有 len()。变量 blobs 在 blob.py 中初始化为 None,但后来在 adamEve() 中定义为列表。当我尝试运行 main.py 时,我在饥饿管理()的 for 循环中收到此错误。感谢您的帮助。
斑点.py
from random import seed
from random import randint
seed(2)
blobs = None
class Blob:
def __init__(self):
self.name = randint (0, 1000)
self.gender = randint(0, 1)
self.age = 0
self.ate = False
newSeed = self.name*self.gender
seed(newSeed)
def adamEve():
global blobs
blobs = [Blob() for _ in range(2)]
print(blobs)
blobs[0].gender = 0
blobs[1].gender = 1
def debug():
for x in range(len(blobs)):
print("Name: ", blobs[x-1].name, ", ", "Gender:", blobs[x-1].gender)
食物.py
food = 0
def foodSupply(amount):
global food
food = amount
饥饿管理.py
from Blob import *
from Food import *
def hungerManage():
global blobs
global food
for x in range(len(blobs)):
if food > 0:
blob[x].ate = True
food = food - 1
if food <= 0:
blob[x].ate = False
for x in range(len(blobs)):
if blob[x].ate == False:
del blob[x]
主文件
from Blob import *
from Food import *
from hungerManage import *
adamEve()
foodSupply(50)
debug()
hungerManage()
解决方案
推荐阅读
- javascript - 在javascript中使用函数获取实时值
- javascript - 尽管状态发生了变化,但自定义钩子不会触发组件重新渲染
- python - 使用请求时 Python 超级强制 HTTP/2
- python - 如何将 CSV 文件中的行存储在字典中?
- sql - 如何使用 STUFF 和 FOR XML PATH 分隔与其行相关的唯一值
- excel - 在 Excel 中使用 VBA 根据单元格值将数据从一张表中提取到新表中
- javascript - 连续调用 Reactjs 获取失败
- ansible - Ansible如何展平字典
- sql - 查询以识别 SAP B1 中的滞销库存
- html - 无法更改表格宽度