我正在使用我的Auto-Rig腳本,並注意到代碼越來越長,難以閱讀並專注於一部分。我正在考慮導入一個python文件並調用導入的python文件中的函數。似乎無法找到一種方法來導入文件可以有人幫助我。將python導入pymel
0
A
回答
1
我建議你創建的Python模塊與你的Python文件,然後從MEL文件做:
python "import my_python_module";
string $pycommand = "my_python_module.my_function(param1, "+ $mel_string_param1 +",\"" + $mel_string_param2 + "\")";
string $result= `python $pycommand`;
0
寫你希望你的模塊作爲一個Python文件中所包含的功能。 (提示:不要用數字啓動你的python文件名)。
在我的例子myModule.py
包含:
def myFunc1():
print 'myFunc1 is called'
pass
def myFunc2():
print 'myFunc2 is called'
return
現在保存文件的文件夾中。我的例子Python的文件路徑爲:
d:\projects\python\myModule.py
現在,輸入:
import sys
import os
modulePath = os.path.realpath(r'd:\projects\python\myModule.py')
moduleName = 'myModule'
if modulePath not in sys.path:
sys.path.append(modulePath)
try:
reload(moduleName)
except:
exec('import %s' % moduleName)
你的模塊就可以進口。
現在叫myFunc1()
從myModule
:
myModule.myFunc1()
這會給輸出:
myFunc1 is called
現在我們調用myFunc2()
從myModule
:
myModule.myFunc2()
這會給輸出:
def myFunc3():
print 'myFunc3 is called'
return
我們只需要運行上面相同的代碼來重新加載更新:
myFunc2 is called
如果我們現在有一個新的功能更新我們的myModule.py
模塊。
現在,我們可以嘗試聲明:
myModule.myFunc3()
...並得到如下的輸出:
myFunc3 is called
相關問題
- 1. 修復PyMel導入錯誤「從空列表中彈出」?
- 2. 使用aimConstraint瑪雅Python Pymel的錯誤
- 3. 將sklearn導入python
- 4. 將RSA密鑰導入Python
- 5. Python:將URL導入列表
- 6. 將圖片導入python
- 7. 將javax包導入python
- 8. python pydictionary將不會導入?
- 9. 將excel文件導入python
- 10. 將pylab結構導入python
- 11. 將fortran文件導入python
- 12. 將熊貓導入Python
- 13. 無法將MySQLdb導入python
- 14. 將CSV導入Oracle表(Python)
- 15. 從python中導入導入導入
- 16. 無法將導入gdal導入安裝了anaconda的python(MacOSX)
- 17. 使用Python導入 - 將多個excel文件導入數據框
- 18. Python GData導入
- 19. Python導入dll
- 20. Python SMTP導入
- 21. 導入Python包
- 22. 導入在Python
- 23. 「導入」在Python
- 24. Python不導入
- 25. Python導入
- 26. 如何將OpenCV庫導入Python?
- 27. 無法將Owlready庫導入到Python中
- 28. 將python模塊導入當前項目?
- 29. 將Python模塊導入Jinja模板?
- 30. 將Python文本文件導入.csv
寫thefile.py,然後在你的腳本'進口thefile'。使用函數調用'thefile.afunction()' – joaquin 2013-03-05 07:52:05
最好的方法是花一些時間閱讀關於[繼承,私有變量和類本地引用] [1]的Python文檔,它的基本理解是任何「對象」 oop語言應該有一個數據和行爲, [1]:https://docs.python.org/2/tutorial/classes.html – 2016-09-11 21:08:14