python中说_name_没有被定义_名称'self'未在Python中定义(Name 'self' is not Defined in Python)...

2023-05-16

名称'self'未在Python中定义(Name 'self' is not Defined in Python)

任何人都可以告诉我我需要做什么来解决“名称'自我'未定义”错误我在下面确定的线上?:

class FulfillWhseOrderAction(object):

def __init__(self, name):

self._action_name = name

self._as = actionlib.SimpleActionServer(self._action_name, pkg_commands.msg.FulfillWhseOrderAction, execute_cb=self.execute_cb)

self._as.start()

# *** ERROR HAPPENING HERE: ***

rospy.loginfo('%s: Executing warehouse order' % self._action_name)

if __name__ == '__main__':

rospy.init_node('node_ReceiveWhseOrder')

FulfillWhseOrderAction(rospy.get_name())

rospy.spin()

Can anyone tell me what I need to do to resolve the "Name 'self' not defined" error I'm getting on the line identified below?:

class FulfillWhseOrderAction(object):

def __init__(self, name):

self._action_name = name

self._as = actionlib.SimpleActionServer(self._action_name, pkg_commands.msg.FulfillWhseOrderAction, execute_cb=self.execute_cb)

self._as.start()

# *** ERROR HAPPENING HERE: ***

rospy.loginfo('%s: Executing warehouse order' % self._action_name)

if __name__ == '__main__':

rospy.init_node('node_ReceiveWhseOrder')

FulfillWhseOrderAction(rospy.get_name())

rospy.spin()

原文:https://stackoverflow.com/questions/20391669

2020-01-06 20:45

满意答案

self是发送到__init__函数的变量(称为对象)。 所以你无法从函数外部访问它。 将错误发生行缩进到函数内部。

class FulfillWhseOrderAction(object):

def __init__(self, name):

self._action_name = name

self._as = actionlib.SimpleActionServer(self._action_name, pkg_commands.msg.FulfillWhseOrderAction, execute_cb=self.execute_cb)

self._as.start()

# *** ERROR HAPPENING HERE: ***

rospy.loginfo('%s: Executing warehouse order' % self._action_name)

if __name__ == '__main__':

rospy.init_node('node_ReceiveWhseOrder')

FulfillWhseOrderAction(rospy.get_name())

rospy.spin()

这样可以解决问题

The self is a variable(call it an object) sent to the __init__ function. So you cannot access it from outside the function. Indent the error occuring line to be inside the function.

class FulfillWhseOrderAction(object):

def __init__(self, name):

self._action_name = name

self._as = actionlib.SimpleActionServer(self._action_name, pkg_commands.msg.FulfillWhseOrderAction, execute_cb=self.execute_cb)

self._as.start()

# *** ERROR HAPPENING HERE: ***

rospy.loginfo('%s: Executing warehouse order' % self._action_name)

if __name__ == '__main__':

rospy.init_node('node_ReceiveWhseOrder')

FulfillWhseOrderAction(rospy.get_name())

rospy.spin()

This will save the problem

2013-12-05

相关问答

在使用它之前定义类: class Something:

def out(self):

print("it works")

s = Something()

s.out()

您需要将self作为第一个参数传递给所有实例方法。 Define the class before you use it: class Something:

def out(self):

print("it works")

s = Something()

s.out()

Yo...

不用担心:)欢迎来到Python! 它正在抛出这个错误,因为它正在寻找一个不存在的全局变量 - 而且它不存在的原因是因为你没有达到if type == "accounts"条件! 尝试这个: for i in included:

global signs,accounts, regions

global sign_name, acc_name, rg_name

regions = "no region yet"

acc_name = "no acc_name yet"

if ...

您的线程正在运行模块的生命周期 。 在启动线程后立即退出Python程序。 那时,Python开始清理所有内容,包括清理模块全局变量。 __file__名称是首先要做的事情之一。 如果在模块末尾添加一个sleep,则__file__名称的长度足以让您的线程完成: import os

import time

from threading import Thread

def cur_dir():

current_dir = os.path.dirname(os.path.abspath(__...

self是发送到__init__函数的变量(称为对象)。 所以你无法从函数外部访问它。 将错误发生行缩进到函数内部。 class FulfillWhseOrderAction(object):

def __init__(self, name):

self._action_name = name

self._as = actionlib.SimpleActionServer(self._action_name, pkg_commands.msg.Fulfi...

您需要使用self参数引用实例上的方法。 另外,你的add()方法需要返回它生成的mylist变量,你不能将方法局部变量作为方法的属性引用: def display(self):

mylist = self.add()

z = min(mylist)

w = mylist.index(z)

def add(self):

list=[]

mylist=[]

for i in range(2):

self.name = raw_in...

我猜你正在使用Python 2.x ,在Python 2.x中, input实际上是在返回结果之前尝试评估输入,因此如果你输入一些名字,它会将其视为变量并尝试获取其值造成这个问题。 使用raw_input() 。 代替。 示例 - participant = raw_input("Participant name > ")

....

score = raw_input("Score for " + participant + "> ")

I am guessing you are using P...

它与任何版本的Python都不兼容。 hello (或file或任何其他参数名称)是仅在函数体中可用的名称。 当调用func(hello) Python将尝试在全局范围内查找名称hello并失败,因为未定义此类名称。 当Python试图在func体内查找hello它会成功,因为有一个带有该名称的参数。 以下作品: hello = 'Hello'

def func(hello):

print(hello)

func(hello)

因为函数调用func时会找到hello 。 It isn'...

如果没有ValueError则只分配end 。 如果int()引发异常,那么赋值永远不会发生 。 在try测试有效的end值(以便您不知道引发异常),或者指定一个默认值以便首先end 。 例如,以下内容不会抛出您的异常,并且如果输入了1或2以外的任何内容,仍会提示用户重新输入该号码: while True:

try:

end=int(input("If You Dont Want To Buy Anything Press 1 To Exit\nOr If You Woul...

您需要在定义函数后进行调用: def wanttodoagain()

print ("Hi whats your name?")

name = input ('')

print ("Hi, {}".format(name))

print ("So, do you want to do this again?????")

print ("Y/N, it has to be capital")

doagainanswer=input("")

if...

相关文章

Python 编程语言具有很高的灵活性,它支持多种编程方法,包括过程化的、面向对象的和函数式的。但最重

...

python2和python3的区别,1.性能 Py3.0运行 pystone benchmark的速

...

Python的文件类型 Python有三种文件类型,分别是源代码文件、字节码文件和优化代码文件

源代

...

python的官网:http://www.python.org/ 有两个版本,就像struts1和st

...

好久没有写了,还不是近期刚过的期末考试和期中考试 最近因为一个微信公众平台大赛在学phthon 找了本

...

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python中说_name_没有被定义_名称'self'未在Python中定义(Name 'self' is not Defined in Python)... 的相关文章

  • Python3+Kivy+Plyer 推送通知图标问题

    我在使用 Android 的简单通知测试应用程序时遇到了一个奇怪的错误 错误 python AttributeError type object notification org notificator R drawable has no
  • 如何在groupby之后将pandas数据框拆分为许多列

    我希望能够在 pandas 中使用 groupby 按列对数据进行分组 然后将其拆分 以便每个组都是数据框中自己的列 e g time data 0 1 2 0 1 2 3 0 2 3 4 0 3 1 2 1 4 2 3 1 5 3 4 1
  • 为什么方法无法访问类变量?

    我试图理解Python中的变量作用域 除了我不明白为什么类变量不能从其方法访问的部分之外 大多数事情对我来说都很清楚 在下面的例子中mydef1 无法访问a 但如果a可以在全局范围 类定义之外 声明 class MyClass1 a 25
  • 蟒蛇 |如何将元素随机添加到列表中

    有没有一种方法可以将元素随机添加到列表中 内置函数 ex def random append lst a lst append b lst append c lst append d lst append e return print ls
  • 无法将 datetime.datetime 与 datetime.date 进行比较

    我有以下代码并收到上述错误 由于我是 python 新手 我无法理解这里的语法以及如何修复错误 if not start or date lt start start date 有一个datetime date 从日期时间转换为日期的方法
  • DataFrame 中的字符串,但 dtype 是对象

    为什么 Pandas 告诉我我有对象 尽管所选列中的每个项目都是一个字符串 即使在显式转换之后也是如此 这是我的数据框
  • 远程控制或脚本打开 Office 从 Python 编辑 Word 文档

    我想 最好在 Windows 上 在特定文档上启动 Open Office 搜索固定字符串并将其替换为我的程序选择的另一个字符串 我该如何从外部 Python 程序中做到这一点 OLE 什么 原生 Python 脚本解决方案 The doc
  • 如何在 openpyxl 中设置或更改表格的默认高度

    我想通过openpyxl更改表格高度 并且我希望首先默认一个更大的高度值 然后我可以设置自动换行以使我的表格更漂亮 但我不知道如何更改默认高度 唯一的到目前为止 我知道更改表格高度的方法是设置 row dimension idx heigh
  • 使用 Python 中的 IAM 角色访问 AWS API Gateway

    我有一个 AWS API 网关 我想使用它来保护其安全IAM 角色 http docs aws amazon com apigateway latest developerguide permissions html 我正在寻找一个包来帮助
  • 在python中调用subprocess.Popen时“系统找不到指定的文件”

    我正在尝试使用svnmerge py合并一些文件 它在底层使用 python 当我使用它时 我收到一个错误 系统找不到指定的文件 工作中的同事正在运行相同版本的svnmerge py 以及 python 2 5 2 特别是 r252 609
  • 如何检查包含 NaN 的列表 [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 在我的 for 循环中 我的代码生成一个如下所示的列表 list 0 0 0 0 sum 0 0 0 0 该循环生成所有其他数字向量 但它也
  • 将具有不同大小的行的数据加载到 Numpy 数组中

    假设我有一个包含如下数据的文本文件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 如何将它加载到 numpy 数组中 使其看起来像这样 1 2 3 4 5 0 6 7 8 0 0 0 9 1
  • 如何获取 Matplotlib 生成的散点图的像素坐标?

    我使用 Matplotlib 生成散点图的 PNG 文件 现在 对于每个散点图 除了 PNG 文件之外 我还会also就像生成散点图中各个点的像素坐标列表一样 我用来生成散点图 PNG 文件的代码基本上是这样的 from matplotli
  • Matplotlib 将颜色图 tab20 更改为三种颜色

    Matplotlib 有一些新的且非常方便的颜色图 选项卡颜色图 https matplotlib org examples color colormaps reference html 我错过的是生成像 tab20b 或 tab20c 这
  • 如何将reportlab与Google应用程序引擎一起使用

    我无法在谷歌应用程序引擎下正确导入reportlab 根据以下guide http blog notdot net 2010 04 Generating PDFs on App Engine Python and introducing M
  • 向伪 shell (pty) 发出命令

    我尝试使用 subprocess popen os spawn 来运行进程 但似乎需要伪终端 import pty master slave pty openpty os write master ls l 应该发送 ls l 到从属终端
  • Python“self”关键字[重复]

    这个问题在这里已经有答案了 我是 Python 新手 通常使用 C 最近几天开始使用它 在类中 是否需要在对该类的数据成员和方法的任何调用前添加前缀 因此 如果我在该类中调用方法或从该类获取值 我需要使用self method or sel
  • 字母尺度和随机文本上的马尔可夫链

    我想使用 txt 文件中的一本书中的字母频率生成随机文本 以便每个新字符 string lowercase 取决于前一个 如何使用马尔可夫链来做到这一点 或者使用每个字母都有条件频率的 27 个数组更简单 我想使用来自的字母频率生成随机文本
  • 获取运行云功能的运行时服务帐户

    有没有办法以编程方式从云功能获取运行时服务帐户的电子邮件 我知道我可以 猜测 默认的 App Engine 帐户 因为它始终是 appspot gserviceaccount com 但这不是我想要的 我本来期待有一些环境变量 https
  • 如何将 Pandas Dataframe 中的字符串转换为字符列表或数组?

    我有一个名为的数据框data 其中一列包含字符串 我想从字符串中提取字符 因为我的目标是对它们进行一次性编码并使之可用于分类 包含字符串的列存储在预测因子如下 predictors pd DataFrame data columns Seq

随机推荐