【问题标题】:printing output using object in python [duplicate]在python中使用对象打印输出[重复]
【发布时间】:2017-04-15 03:54:29
【问题描述】:
class hive:
   def abc(str):
      name = str
      return name + ' welcome'

def main():
  obj = hive()
  print('enter name')
  string = input()
  print(obj.abc(string))

if __name__ == "__main__": main()

我想打印带有欢迎字符串的名称,但我不能这样做,我收到以下错误:

C:\Users\SHUBHAM TANDAN\Desktop\python>class.py 
enter name
shubham
Traceback (most recent call last):
File "C:\Users\SHUBHAM TANDAN\Desktop\python\class.py", line 12, in <module>
if __name__ == "__main__": main()
File "C:\Users\SHUBHAM TANDAN\Desktop\python\class.py", line 10, in main
print(obj.abc(string))
TypeError: abc() takes 1 positional argument but 2 were given

谁能帮我找出上面代码中的错误?

【问题讨论】:

    标签: python class object


    【解决方案1】:

    在 python 中创建类时,所有嵌套函数都必须有 'self' 参数。

    class hive:
       def abc(self, str):
          name = str
          return name + ' welcome'
    

    【讨论】:

    • obj.abc(string) 类似于 hive.abc(obj, string)。
    猜你喜欢
    • 2020-05-14
    • 1970-01-01
    • 2019-02-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-24
    • 1970-01-01
    • 2021-12-21
    相关资源
    最近更新 更多