擅长:python、mysql、java
<p>正如AKX提到的,它们是当前定义的类级变量。
为了将它们作为全局变量,可以将它们移出类</p>
<h2>另一种方法</h2>
<p>因为问题不是让它们成为全局变量,而是为什么它们在移动到类时不可访问,所以另一个解决方案是将它们作为类级变量保留,然后像<code>self.sverify_index</code>和<code>self.sverify_msg_id</code>那样访问它们</p>
<p>因此,解决方案如下</p>
<pre class="lang-py prettyprint-override"><code>class Something(commands.Cog):
...
sverify_index=0
sverify_msg_id=""
@commands.Cog.listener()
async def on_message(self, message):
if (message.channel.id == 888529033405530183 and
message.author.id != 887542628063780864):
self.sverify_index += 1
self.sverify_list = []
self.sverify_list.append(self.sverify_index)
</code></pre>