Can';导入Python模块

Can';导入Python模块,python,Python,我创建了以下名为resource.py的Python3模块,其中包含两个函数,Read_Cursor和Write_Cursor。导入模块时,会出现错误,具体取决于导入模块的方式 我试过: import resource from resource import * Read_Cursor=resource.Read_Cursor resource.py: def Write_Cursor(Cursor): with open("/run/thermostat/Cursor","

我创建了以下名为resource.py的Python3模块,其中包含两个函数,Read_Cursor和Write_Cursor。导入模块时,会出现错误,具体取决于导入模块的方式

我试过:

import resource
from resource import *
Read_Cursor=resource.Read_Cursor
resource.py:

def Write_Cursor(Cursor):
        with open("/run/thermostat/Cursor","w") as f: # Set the Cursor position

def Read_Cursor():
        with open("/run/thermostat/Cursor","r") as f:   # Get the Cursor position
                C = int(f.read())
        return C

错误:

Traceback (most recent call last):
  File "./index.py", line 6, in <module>
    import resource
  File "/usr/lib/cgi-bin/resource.py", line 5
    def Read_Cursor():
    ^
IndentationError: expected an indented block
回溯(最近一次呼叫最后一次):
文件“/index.py”,第6行,在
导入资源
文件“/usr/lib/cgi-bin/resource.py”,第5行
def Read_Cursor():
^
缩进错误:应为缩进块

您得到了不正确的缩进块,在Python中是4个空格或1个表格

更正代码:


您得到了不正确的缩进块,在Python中是4个空格或1个表格

更正代码:


错误实际上出现在前一行:
将open(“/run/automator/Cursor”,“w”)设为f:#设置光标位置
:with语句不完整(检查)
要更正它,请执行以下操作:

def Write_游标(游标):
将open(“/run/TIMERSOR/Cursor”,“w”)设为f:#设置光标位置
f、 write(str(Cursor))#只是一个例子,我不知道应该如何序列化Cursor
此外,正如其他人指出的,您应该使用4空格进行缩进(如中所建议):

每个缩进级别使用4个空格


错误实际上出现在前一行:
将open(“/run/automator/Cursor”,“w”)设为f:#设置光标位置
:with语句不完整(检查)
要更正它,请执行以下操作:

def Write_游标(游标):
将open(“/run/TIMERSOR/Cursor”,“w”)设为f:#设置光标位置
f、 write(str(Cursor))#只是一个例子,我不知道应该如何序列化Cursor
此外,正如其他人指出的,您应该使用4空格进行缩进(如中所建议):

每个缩进级别使用4个空格


文件
resource.py
未正确缩进。使用类似于
PyLint
的linter来找出原因。它只返回:************模块cgi-bin.resource E:5,0:需要一个缩进块(语法错误),这没有太大帮助。一般提示:如果解释器说它“需要”某个东西,并且它指向行的开头,然后错误通常出现在前一行。文件
resource.py
没有正确缩进。使用类似于
PyLint
的linter来找出原因。它只返回:************模块cgi-bin.resource E:5,0:需要一个缩进块(语法错误),这没有太大帮助。一般提示:如果解释器说它“需要”某个东西,并且它指向行的开头,然后错误通常出现在前一行。这并不能解决真正的问题,即
Write\u Cursor
中的
with
语句中没有代码。尽管PEP 8建议使用4个空格(如果不强制),但只要一致,就可以使用任何缩进。答案是不正确的-1.正确!你的眼睛很锐利。和其他人一样,我也在看缩进。我从未想过我遗漏了写入。这并不能解决真正的问题,即
write\u Cursor
中的
with
语句中没有代码。尽管PEP 8建议使用4个空格(如果不强制),但只要一致,就可以使用任何缩进。答案是不正确的-1.正确!你的眼睛很锐利。和其他人一样,我也在看缩进。我从来没有想到我漏掉了这封信。哎呀!那是怎么发生的?我从一份工作副本中剪切并粘贴了代码。不知怎的,我把代码写下来了。Pfft!哦,你猜对了代码。有时会发生:)哎呀!那是怎么发生的?我从一份工作副本中剪切并粘贴了代码。不知怎的,我把代码写下来了。Pfft!哦,你猜对了代码。有时会发生:)
def Write_Cursor(Cursor):
    with open("/run/thermostat/Cursor","w") as f: # Set the Cursor position

def Read_Cursor():
    with open("/run/thermostat/Cursor","r") as f:   # Get the Cursor position
        C = int(f.read())
    return C