tcl调用python文件并传参

TCL与Python的命令行交互 通过上述命令和函数,我们就已经实现了TCL应用程序创建Python解释器,并与之建立了管道通信,同时还能监控其标准输出通道输出的数据,同时将标准错误通道映射到TCL解释器的标准错误通道中。Python语言当前的应用远比TCL语言火热的多,它有这丰富的第三方库和庞大的开发群体,所以在很多应用场景中,Python都有着丰富的资源可以使用。管道通信(Pipe)是TCL支持的众多应用程序间通信中的一种,通过这种方式可以打通两个应用程序间的标准输入、标准输出和标准错误通道。 阅读详情

项目开发中需要用到tcl调用python实现一些tcl无法实现的功能,mark下。

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 {n m} {
    return [expr $n+$m]
}

接下来我们看看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

Python调用HyperMesh执行Tcl脚本:批量自动化前处理全指南 在CAE仿真和有限元分析中,前处理环节往往占据大量重复性工作,尤其是涉及多模型网格划分、中面抽取等任务时,手动操作效率极低。脚本自动化成为提升工程效率的关键手段,而HyperMesh作为主流前处理工具,其内置的Tcl/Tk脚本语言提供了强大的底层控制能力。理解Python与Tcl之间的协作原理,能够帮助工程师通过标准库subprocess直接驱动HyperMesh批处理模式,实现从模型读取、参数设定到结果输出的全流程自动化。这种方案不仅适用于批量网格划分,也能扩展到模型规范化、质量检查等场景。掌握Pytho 阅读详情

相关推荐

基于Tcl/Tk的FPGA仿真文件自动收集交互界面设计

FPGA仿真验证流程中,波形、日志、覆盖率等产出文件零散分布在不同目录,手动收集极易遗漏或覆盖,成为工程师反复消耗精力的隐形痛点。Tcl/Tk作为FPGA工具链原生支持的脚本语言与图形库,无需额外依赖即可快速构建跨平台GUI,在自动化辅助工具开发中具有天然优势。本文从仿真文件管理的真实需求出发,阐述如何利用Tcl/Tk实现仿真进程异步调度、文件识别与时间戳归档的完整方案,并解决exec阻塞、路径匹配、跨平台编码等典型工程问题。该方案适用于ModelSim、QuestaSim、Vivado XSim等主流工具

weixin_34060299的博客 458

[脚本]tcl&python在项目中运用

然后在文件夹下再新建一个文本文件,输入:vsim -do start.do再将txt后缀改为bat,即可通过运行该文件自动执行脚本运行仿真vlib:建立目录vmap:映射对应vlog:编译文件vsim:启动仿真。

seuer0420的博客 882

Windows下OpenSeesPy报错找不到tcl86t.dll?一个Python脚本帮你快速定位并修复

本文针对Windows下OpenSeesPy报错找不到tcl86t.dll的问题,提供了一个自动化Python脚本解决方案。该脚本能智能检测并修复DLL缺失问题,支持不同Python环境和Anaconda/Miniconda,帮助用户快速解决依赖问题,提升结构分析工作效率。

weixin_30920853的博客 460

像python函数一样直接使用tcl库

我前期项目中写了很多tcl的库函数,但是现在领导想用python实现新的功能,这就需要解决在python中调用tcl函数的问题。我简单的利用python的反射机制解决了这个问题。 基本思路:当python调用一个对象方法的时候,会去查找属性列表,如果找不到就会去调用__getattr__函数,可以在这个函数中返回一个执行对应tcl函数的python函数。 基本实现代码如下: 举例: 如果想调用t...

shiliqiang167的博客 4624

用Python写OpenSees:单自由度弹塑性时程分析实战

结构动力分析与非线性仿真在工程抗震研究中占据核心地位。传统上依赖Tcl脚本驱动的OpenSees计算内核虽功能强大,但脚本语言在数据管理、参数扫描与后处理方面存在明显短板。Python作为一种通用编程语言,凭借丰富的科学计算生态,为OpenSees提供了全新的工作流:从模型构建、求解控制到结果可视化全流程统一,极大提升了重复性任务的自动化程度。弹塑性时程分析是评估结构地震响应的经典方法,通过定义质量、刚度与屈服参数,结合Newmark积分算法模拟结构在动力激励下的非线性行为。基于Python接口,工程师可以

weixin_34194359的博客 465

tohil:羽毛蛇,Python和TCL羽毛之间的令人愉快的集成。

托希尔 Tohil是一条羽毛蛇,旨在在python(蛇)和TCL(羽毛)之间提供令人愉悦的集成。 Tohil同时是Python扩展和TCL扩展,可以轻松地在Tcl和Python之间双向调用,以Tcl 8.6+和Python 3.6+为目标 Tohil是开源软件,根据许可的3条款BSD许可(包括“ LICENSE.txt”)免费提供,包括盈利和/或再分发。 tohil是基于libtclpy的,并受到libtclpy的启发,并因此而存在,是因为Aidan Hobson Sayers可以从。 用法 您可以将tohil导入Tcl或Python父解释器。 这样做将创建并初始化对应语言的解释器,并在两种语言中定义tohil的功能。 使用tohil,Python代码可以随时调用Tcl代码,反之亦然,并且它们可以彼此“通过”调用,即Python可以调用Tcl代码,该Tcl代码调用Python代码,

Tcl常用命令备忘录-访问文件篇

示例解释:以上例子中,我们首先使用open命令打开一个文件,该文件的名字为"output.txt",操作为写文件("w")。第三个例子中,使用file exists检查文件是否存在,如果存在则打开文件,使用read读取文件内容,并输出到控制台。第一个例子中,使用file exists检查文件是否存在,如果存在则输出"文件存在",否则输出"文件不存在"。如果test.txt存在,则输出"文件存在",否则输出"文件不存在"。如果test.txt文件存在,则输出文件内容,否则输出"文件不存在"。

m0_61544122的博客 5110

人大金仓V8R3企业版License更新全攻略:从查看到重启一步到位

本文详细解析了人大金仓V8R3企业版License更新的完整运维流程,涵盖从诊断当前授权状态、获取与验证新文件、精准定位旧文件路径,到安全替换文件及服务重启验证的全过程。重点针对更新流程中常见的版本匹配、文件定位、权限与服务重启等关键环节提供了实战解决方案和避坑指南,帮助运维人员高效、平稳地完成授权续期。

redis7keeper的博客 902

python tcl.eval_【Tcl/tk】多个参数调用之eval的用法

自学Tcl/tk已有半年余,近期终于完成了一个图形化的程序,用于人机交互,并实现自动化监控管理。在编写过程中,遇到了很多意想不到的困难,在此,大致记录一下,权作备忘。先来看看eval命令的定义:Eval是用于创造和运行脚本的通用构造。它接受任意多个参数,把它们用分隔符串接起来,然后把串接的结果作为一个脚本处理。例如,用tcl调用一个外部程序example.exe,我们通常的做法是直接输入命令:ex...

weixin_39637386的博客 537

泛微Ecology9单点登录实战指南:从Token获取到页面跳转

本文提供了一份详尽的泛微Ecology9单点登录实战指南,重点解析了Token跳转式SSO的核心流程。内容涵盖从理解关键参数(如appid、loginid)与一次性Token机制,到通过代码示例演示如何正确调用接口获取Token,并详细说明了拼接不同场景跳转地址的完整规则与安全实践,旨在帮助开发者高效、稳定地实现业务系统与OA门户的无缝集成。

ol789012345的博客 1075

JSBSim开发手册:飞机仿真模型开发指南

JSBSim是一款开源的飞行动力学模型仿真引擎,支持多种飞行器的仿真,包括固定翼飞机、直升机、无人机等。JSBSim的设计目标是提供一个灵活、高效、精确的飞行动力学仿真环境。飞行动力学仿真:实现飞行器的动力学仿真,包括空气动力学、发动机、质量和惯性等模型。控制系统仿真:实现飞行器的控制系统仿真,包括自动驾驶仪、飞控系统等。环境仿真:模拟飞行环境,包括大气模型、风力模型等。本文详细介绍了如何使用C++进行JSBSim开发,包括系统设计、模型实现、代码优化和性能调优等方面的内容。

qq_38334677的博客 4527

FPGA Tcl/TK —— Tcl调用python文件并传参

vivado tcl 做自动化编译前的准备

Tony 1560

【backtrader保姆级教学】投资组合回测

method1:探索投资组合的最有方案,使用蒙特卡洛模拟Markowitz模型。# 提取最小波动组合对应的权重, 并转换成Numpy数组。# 绘制收益-标准差的散点图,并用颜色描绘夏普比率。# 在收益-风险散点图中突出风险最小的点。:param any_day: 任意日期。# 将该点坐标显示在图中并保留四位小数。password = “替换密码”# 找到标准差最小数据的索引值。user = “替换账号”# 计算GMV投资组合收益。# 计算每项资产的夏普比率。# 设置无风险回报率为0。

weixin_38132951的博客 2315

tcl调用python文件无传参

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) ...

qq_15551663的博客 966

KV260-从开箱到人脸识别(小白入门)

波特率选择115200,数据为8位,停止位1位,无奇偶校验,点击链接即可完成通讯。空白的盘格式化之后及进行挂载,这时会被我们的操作系统接手管理,这时就具有了操作系统的属性,复制文件就是在操作系统下的文件系统基础上进行的操作,这个过程是相对的地址进行操作,因此,复制文件是在操作系统环境下完成的更高级的操作模式。空白的盘相当于一整块空白的存储单元,因为没有格式化也不具有文件系统的属性,只有当外部的硬件或者软件写进空白的区域,这种方式是对绝对物理地址进行的操作,因此,烧录文件是独立于操作系统的更低级的写入方式。

qq_53252845的博客 3815

FPGA 学习系列(2):Verilog 语法基础

Verilog 由门级建模数据流建模行为建模门级建模(Gate Level Modeling):使用基本逻辑门描述电路,接近硬件物理结构。数据流建模(Data Flow Modeling):使用assign语句进行组合逻辑建模,类似数学方程式。行为建模(Behavioral Modeling):使用always代码块和if-elsecase等控制语句建模,抽象程度较高。Verilog 代码一般由模块(module)组成,每个模块描述一个独立的硬件功能。

Azperk的博客 989

python如何调用含有多个参数的tcl函数

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33858249的博客 429

华为OD新系统机试真题 - 获取大写字母瓷砖拼出独特图案数量

华为OD机试新系统真题【获取大写字母瓷砖拼出独特图案数量】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD新系统四月二十九号机试真题【获取大写字母瓷砖拼出独特图案数量】

qq_45776114的博客 1219

tcl脚本实现登录终端并批量执行命令

大致需求是登录一个新的命令行,然后批量执行命令,但ip不同。本来打算用python写的,但是登录新的命令行需要安装pexpect包,由于需要在设备上跑,所以采用expect命令来实现登录功能,但是使用shell脚本配合expect命令登录传参特别不方便。每次下发命令需要重复登录,很麻烦,查资料得知expect脚本是采用的tcl脚本语言编写,因此我们采用tcl来写这个脚本 运行 chmod 777 demo.sh ./demo.sh 1.1.1.1 1000第一次写tcl脚本,网上资料很少,有很多坑,比如{的

qq_44111565的博客 1120

深度学习之目标检测--Pytorch实战

只需要能看懂python代码,就能最快入门深度学习---目标检测。目标检测简单的玩玩儿还行,模型调优,调参,还需要一定的数学功底。通过代码来实现卷积,池化,非线性激活,正则化,归一化,能让人减少对大量数学公式的敬畏,手写神经网络也是考研复试中上机考试的压轴题,掌握搭建神经网络和如何训练模型是需要掌握的基础的

需要远程指导仿真实验、代码有问题的,请后台私信或者关注公众号 1万+

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

基于Tcl/Tk的FPGA仿真文件获取交互界面设计与实现

在FPGA开发流程中,仿真验证是确保设计正确性的关键环节,而仿真产生的波形、日志及数据文件的有效管理与获取,直接影响项目迭代效率。传统的文件提取依赖手动操作或纯脚本,易错且耗时。Tcl作为主流FPGA仿真工具(如ModelSim、Vivado Simulator)的内置脚本语言,与仿真环境无缝集成,结合Tk图形工具包,可快速构建轻量级交互界面。本文从Tcl/Tk的技术原理出发,阐述如何通过界面化设计实现仿真文件的自动扫描、分组展示、目标路径配置及一键复制,并集成到仿真流程中实现自动化归档。该方案不仅简化了文

weixin_33910460的博客 388

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

KBEngine 内置 Python 的 Tk 图形界面编程指南:tkinter 体系、核心 API 与源码实现

KBEngine 在 `kbe/src/lib/python` 中随附了一套完整的 Python 标准库源码,其中包含 `tkinter`(Tk 接口)全套文档与实现。本指南以该文档区入口 [tk.rst](https://link.gitcode.com/i/ad983d6d8223ad5e17a7ed0d49359596) 为核心骨架,系统讲解 Tk/Tcl 与 Python 的对接方式、`t

gitblog_01021的博客 326

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

CPython tkinter.colorchooser 颜色选择对话框:askcolor/Chooser 用法、参数与返回值详解

本篇基于 CPython 仓库的官方文档与实现源码,讲解 `tkinter.colorchooser` 模块:它以 `Chooser` 类封装了 Tk 原生颜色拾取器命令 `tk_chooseColor`,并通过 `askcolor` 便捷函数向 GUI 应用提供模态选色对话框。读完本文,你将掌握该对话框的初始化颜色设置方式、完整参数语义、返回值 `((r, g, b), hexstr)` 与取消

gitblog_00031的博客 424

Python Tkinter Gui 常用组件介绍 基本使用

Python Tkinter Gui 常用组件介绍 基本使用

EXIxiaozhou的博客 7536

我的项目整理

3.ixchariot是网络设备跑分工具,能测试网络的吞吐量 延迟、丢包等---ixchariot不支持直接用python控制,只能用Tcl语言控制,ixchariot官方只提供TCL API,所以python脚本的本质是启动一个Tcl解释器程序(tclsh.exe)-->运行Tcl脚本(ixchariot_initial.tcl)-->让Tcl去控制ixchariot。可以实现python与TCL联合自动化,实现超时保护(if {!

weixin_43469192的博客 211

python自定义函数保留字是,python的自定义函数

今天想把上次参考着网上教程写的scrapy爬虫改写成requests和beautifulsoup的普通爬虫,写着写着发现自己对python的自定义函数还不是太熟悉(自己TCL了。。。。。。。。。流泪),赶紧菜鸟教程上复习一下,顺便写篇文章。0x01:关键字python中,自定义函数使用def关键字,后面加函数名和参数列表,如下:def 函数名(参数列表):函数体如果不需要传参,括号里就不用填,注意...

weixin_32803887的博客 1250
上一篇: CSS float
下一篇: React Native Network Request Failed解决方案
joyfixing
博客等级 码龄17年 115粉丝 22原创
评论 7
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值