tcl呼叫python檔案無傳參
首先新建乙個add.py檔案,該檔案實現兩個數的相加並返回結果,python中函式返回值用return實現,如果想要讓python檔案中值返回給tcl程式必須在python中print該值,add.py檔案**如下:
#-*- coding: utf-8 -*-
def add(a,b):
return a+b
sum = add(10,20)
print sum
然後新建乙個add.tcl檔案,在該檔案中呼叫python檔案,**很簡單,如下:
set sum [exec python add.py]
puts $sum
此時sum的值為30,表明呼叫add.py成功。
tcl呼叫python檔案有傳參
python檔案接收引數通過sys模組實現,比如執行python add.py 10 20,在add.py中print sys.argv為['add.py', '10', '20'],那麼sys.argv[1]和sys.argv[2]就分別等於10和20了,add.py**如下:
# -*- coding: utf-8 -*-
import sys
def add(a,b):
return int(a)+int(b)
sum = add(sys.argv[1],sys.argv[2])
print sum
相應的add.tcl**如下
set sum [exec python add.py 10 20]
puts $sum
此時輸出結果為30
python呼叫tcl
順便講講python如何呼叫tcl,首先我們寫乙個tcl指令碼,命名為test.tcl,檔案內容如下,這個指令碼裡只有乙個函式,返回兩個值的和,非常簡單。
proc add
接下來我們看看python指令碼,其實是在python中建立了乙個tcl直譯器,然後在python中就可以用tcl直譯器執行tcl中的函式了,此時tcl_str等於30。
from tkinter import tcl
#建立乙個tcl的直譯器
tcl = tcl()
#匯入tcl檔案
tcl.eval('source test.tcl')
#呼叫函式,tcl_str為返回值
tcl_str=tcl.eval('add 10 20')
print tcl_str
輸出30
QT呼叫python檔案(呼叫函式傳參)
pro檔案中 includepath i e miniconda3 include libs le miniconda3 libs lpython37 include define slots q slots include int main int argc,char ar 設定python檔案路...
python 函式,傳參,呼叫
簡單函式介紹 定義 形參 實參 傳參的4中方式 呼叫 return 1.函式定義 python中函式必須先定義,再使用.寫乙個函式前要空兩行,寫完後再空兩行.pycharm書寫 def 函式名 引數 1 2 2.函式呼叫 函式名 引數 舉例 使用函式完成 1 2 定義函式 def add resul...
Python函式呼叫「傳引用」還是」傳值「
結論 結論 python不允許程式設計師選擇採用傳值還是傳引用。python引數傳遞採用的肯定是 傳物件引用 的方式。這種方式相當於傳值和傳引用的一種綜合。如果函式收到的是乙個可變物件 比如字典或者列表 的引用,就能修改物件的原始值 相當於通過 傳引用 來傳遞物件。如果函式收到的是乙個不可變物件 比...