python';模块';对象没有属性';服务器订单';错误

python';模块';对象没有属性';服务器订单';错误,python,python-2.7,Python,Python 2.7,我在写python。我有两个不同的python文件(client_-side.py、server_-side.py)调用 这两个脚本都起作用。在运行这些脚本之后,我得到了这个错误 'module' object has no attribute 'server_order' error 1。服务器端.py #!/usr/bin/python import client_side username = "xxxxxx" password = "123" filename = "dfsdf.tx

我在写python。我有两个不同的python文件(client_-side.py、server_-side.py)调用

这两个脚本都起作用。在运行这些脚本之后,我得到了这个错误

'module' object has no attribute 'server_order' error
1。服务器端.py

#!/usr/bin/python
import client_side

username = "xxxxxx"
password = "123"
filename = "dfsdf.txt"
client_side.client(username,password,filename)

def server_order():
    print "server side is running."
    return 
#!/usr/bin/python

def client(a,b,c):
    print "client side function processing.."
    client_order()
    if __name__ == '__client__':
        client()
        return 

def client_order():
    import server_side
    server_side.server_order()
    return
2。客户端.py

#!/usr/bin/python
import client_side

username = "xxxxxx"
password = "123"
filename = "dfsdf.txt"
client_side.client(username,password,filename)

def server_order():
    print "server side is running."
    return 
#!/usr/bin/python

def client(a,b,c):
    print "client side function processing.."
    client_order()
    if __name__ == '__client__':
        client()
        return 

def client_order():
    import server_side
    server_side.server_order()
    return

问题在于定义函数的顺序。必须在导入函数之前定义它们,请尝试以下操作:

#!/usr/bin/python
import client_side

username = "xxxxxx"
password = "123"
filename = "dfsdf.txt"

def server_order():
    print "server side is running."
    return 

client_side.client(username,password,filename)


您最初的问题是在定义
服务器订单()
之前调用了
client\u-side.client()
。因此,当
client\u-side.client()尝试调用它时,它不在那里

客户端和服务器端是否在同一文件夹中?@Aswin。是的,两个文件都在同一个文件夹中。问题可能是因为通知dependency@Aswin. 我不知道循环依赖是如何解决的?服务器端导入客户端,客户端中的函数导入服务器端。。这是循环依赖关系。试着把它去掉