【发布时间】:2021-10-31 08:18:35
【问题描述】:
从类 dynamic 调用函数 dynamic_exit 时出现问题,该函数是从项目文件中导入的 python 文件调用的。只包含足够的代码来描述我的问题的有效示例。
下面的调用示例:
from lib.core import dynamic
import ...
if requests.get(url).status_code != 200:
clear()
print(" xxxxx \n\n\n")
print("[ !! | Invalid URL ] Status code: {0}".format(
str(requests.get(url).status_code)))
time.sleep(1)
print("\n\n Please enter a valid URL.\nExiting...")
dynamic.dynamic_exit(self=dynamic())
time.sleep(3)
exit()
Lib.core 包含:
class dynamic:
def __init__(self):
self.loadSwitch = False
self.analyzeSwitch = False
self.exitSwitch = False
def dynamic_load(self, loadSwitch=True):
self.loadSwitch = loadSwitch
done = False
for c in itertools.cycle(['[ | ]', '[ / ]', '[ - ]', '[ \\ ]']):
if done:
break
sys.stdout.write('\rLoading ' + c)
sys.stdout.flush()
time.sleep(0.1)
# Further along...
if dynamic.dynamic_analyze(): # Separate function -- Irrelevant
t = threading.Thread(target=dynamic_analyze())
t.start()
elif dynamic_exit(): # Separate function -- Irrelevant
t2 = threading.Thread(target=dynamic_exit())
t2.start()
else: # dynamic_load -- Example function
t3 = threading.Thread(target=dynamic_load())
t3.start()
sys.stdout.write('\r[ ✓ ] Process Complete ')
time.sleep(4.5)
done = True
loadSwitch = False
exitSwitch = False
analyzeSwitch = False
主啊,我知道这是一团糟。第一次真正使用这样的类。
错误如下:
File "~/test-delete.py", line 11, in <module>
from lib.core import dynamic
File "~/lib/core.py", line 55, in <module>
if dynamic.dynamic_analyze():
TypeError: dynamic_analyze() missing 1 required positional argument: 'self'
IDE 需要的不仅仅是一个简单的self 参数,而是推荐self=。所以不知道如何处理。
基本上,在__init__ 函数的上下文和使用self 参数的情况下需要帮助。尝试调用函数设置exitSwitch、analyzeSwitch 或loadSwitch = True、ifswitch == True,执行函数dynamic_load、dynamic_exit 或dynamic_analyze。完成后,将所有开关设置回False。
【问题讨论】:
-
您是否遇到特定错误?您发布的代码似乎存在缩进问题
-
你必须提供正确缩进的代码,它是python语法的一部分
-
不管怎样,你为什么要这么做
dynamic.dynamic_exit(self=dynamic())?为什么不实例化类并正常调用方法呢? -
很抱歉这些家伙,现在正在做一些编辑。秒... 错误如下:
Traceback (most recent call last): File "~/test-delete.py", line 11, in <module> from lib.core import dynamic File "~/lib/core.py", line 55, in <module> if dynamic.dynamic_analyze(): TypeError: dynamic_analyze() missing 1 required positional argument: 'self'
标签: python python-3.x class python-requests self