Dropbox 功能无法从其他本地文件导入或工作
Dropbox function not importing or working from other local file
我有两个 python 文件,一个是我编写和存储函数的地方,另一个是使用它们的地方。
“HW”函数导入并运行,但 dbxupld 没有。谁能建议我如何让它工作。非常感谢。
Python_script1.py
def HW():
print('Hello, World!')
def dbxupld(FileFROM,FileTO):
import dropbox
class TransferData:
def __init__(self, access_token):
self.access_token = access_token
def upload_file(self, file_from, file_to):
dbx = dropbox.Dropbox(self.access_token)
with open(file_from, 'rb') as f:
dbx.files_upload(f.read(), file_to)
def main():
access_token = "[access code hidden]"
transferData = TransferData(access_token)
file_from = FileFROM
file_to = FileTO
transferData.upload_file(file_from, file_to)
if __name__ == '__main__':
main()
Python_script2.py
from Python_script1 import HW
from Python_script1 import dbxupld
HW()
FileFROM = '/home/Setup stuff.pdf'
FileTO = '/upload_testing/Setup Stuff.pdf'
dbxupld(FileFROM,FileTO)
输出:
Hello, World!
但是没有 dropbox 上传
正在正确导入函数。问题出在这部分:
if __name__ == '__main__':
main()
由于您在 Python_script2 中导入 Python_script1,因此 Python_script1 中 __name__
的值是 Python_script1
而不是 __main__
。条件不满足,main
永远不会被调用。要使其工作,请删除条件 if __name__ == 'main'
.
有关 __main__
和 __name__
的更多信息,请参阅 https://docs.python.org/3/library/main.html
我有两个 python 文件,一个是我编写和存储函数的地方,另一个是使用它们的地方。
“HW”函数导入并运行,但 dbxupld 没有。谁能建议我如何让它工作。非常感谢。
Python_script1.py
def HW():
print('Hello, World!')
def dbxupld(FileFROM,FileTO):
import dropbox
class TransferData:
def __init__(self, access_token):
self.access_token = access_token
def upload_file(self, file_from, file_to):
dbx = dropbox.Dropbox(self.access_token)
with open(file_from, 'rb') as f:
dbx.files_upload(f.read(), file_to)
def main():
access_token = "[access code hidden]"
transferData = TransferData(access_token)
file_from = FileFROM
file_to = FileTO
transferData.upload_file(file_from, file_to)
if __name__ == '__main__':
main()
Python_script2.py
from Python_script1 import HW
from Python_script1 import dbxupld
HW()
FileFROM = '/home/Setup stuff.pdf'
FileTO = '/upload_testing/Setup Stuff.pdf'
dbxupld(FileFROM,FileTO)
输出:
Hello, World!
但是没有 dropbox 上传
正在正确导入函数。问题出在这部分:
if __name__ == '__main__':
main()
由于您在 Python_script2 中导入 Python_script1,因此 Python_script1 中 __name__
的值是 Python_script1
而不是 __main__
。条件不满足,main
永远不会被调用。要使其工作,请删除条件 if __name__ == 'main'
.
有关 __main__
和 __name__
的更多信息,请参阅 https://docs.python.org/3/library/main.html