使用参数从终端运行 Jython 脚本

2023-12-25

我想从命令行调用 Jython 脚本,例如$ /Applications/Fiji.app/Contents/MacOS/ImageJ-macosx --headless little_jython_script.py

我了解 Python(以及 Jython)通过以下方式获取参数的能力

import sys
params = sys.argv[1:]

然后用类似的东西调用脚本$ /Applications/Fiji.app/Contents/MacOS/ImageJ-macosx --headless jython_script_with_params.py param1 param2 param3.

然而,根据 ImageJ 网页http://imagej.net/Script_parameters http://imagej.net/Script_parameters还可以在 Jython 中对参数的使用进行编码,类似于该网站的 Greeting.py 示例

# @String name

# A Jython script with parameters.
# It is the duty of the scripting framework to harvest
# the 'name' parameter from the user, and then display
# the 'greeting' output parameter, based on its type.

print "Hello, " + name + "!" 

问题是:如何指定参数name在命令行调用中$/Applications/Fiji.app/Contents/MacOS/ImageJ-macosx --headless Helloworld.py ?


参数的可用方式取决于调用命令,区别在于附加标志--ij2 and --run以 Jython 方式。任何一个sys.argv or # @String等工作,但不能同时工作

1. 使用 sys.argv 的经典 Python 方式

$/Applications/Fiji.app/Contents/MacOS/ImageJ-macosx --headless JythonScript.py param1 param2

收获参数JythonScript.py以经典的Python方式sys.argv , i.e.

# @String param1     ### Does NOT work

import sys
program_name = sys.argv[0]
paramvalue1  = sys.argv[1]
paramvalue2  = sys.argv[2]

2. Jython 特定方式使用 # @String 等。

$/Applications/Fiji.app/Contents/MacOS/ImageJ-macosx --ij2 --headless --run JythonScript_2.py 'param1=value, param2=value'

以 Jython 方式获取参数

# @String param1     
# @Long param2

### See http://imagej.net/Script_parameters#Parameter_types 
### for a complete list of parameter types

import sys
check = sys.argv   
#here check is a length 1 list containing en empty string: check ==['']

注意两个逗号分隔的引号param=value对。单引号和双引号都有效。当仅存在 1 个参数时可以省略它们。对于字符串参数,请确保将它们括在其他类型的引号中,或者当字符串是纯字母数字时省略引号,例如$/Applications/Fiji.app/Contents/MacOS/ImageJ-macosx --ij2 --headless --run JythonScript_3.py 'stringparam1="string with ',' and space ", stringparam2=abc123'

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用参数从终端运行 Jython 脚本 的相关文章

  • Lighttpd 和 cgi python

    我正在尝试通过 lighttpd 执行一些 python 脚本 但是当我尝试运行它时 我只得到一个要求我下载的空白文件 lighttpd conf server modules mod access mod alias mod access
  • 如何用python脚本控制TP LINK路由器

    我想知道是否有一个工具可以让我连接到路由器并关闭它 然后从 python 脚本重新启动它 我知道如果我写 import os os system ssh l root 192 168 2 1 我可以通过 python 连接到我的路由器 但是
  • 需要在python中找到print或printf的源代码[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我正在做一些我不能完全谈论的事情 我
  • Pandas 日期时间格式

    是否可以用零后缀表示 pd to datetime 似乎零被删除了 print pd to datetime 2000 07 26 14 21 00 00000 format Y m d H M S f 结果是 2000 07 26 14
  • 使用 kivy textinput 的 'input_type' 属性的问题

    您好 我在使用 kivy 的文本输入小部件的 input type 属性时遇到问题 问题是我制作了两个自定义文本输入 其中一个称为 StrText 其中设置了 input type text 然后是第二个文本输入 名为 NumText 其
  • YOLOv8获取预测边界框

    我想将 OpenCV 与 YOLOv8 集成ultralytics 所以我想从模型预测中获取边界框坐标 我该怎么做呢 from ultralytics import YOLO import cv2 model YOLO yolov8n pt
  • 在Python中连接反斜杠

    我是 python 新手 所以如果这听起来很简单 请原谅我 我想加入一些变量来生成一条路径 像这样 AAAABBBBCCCC 2 2014 04 2014 04 01 csv Id TypeOfMachine year month year
  • 如何将张量流模型部署到azure ml工作台

    我在用Azure ML Workbench执行二元分类 到目前为止 一切正常 我有很好的准确性 我想将模型部署为用于推理的 Web 服务 我真的不知道从哪里开始 azure 提供了这个doc https learn microsoft co
  • Python,将函数的输出重定向到文件中

    我正在尝试将函数的输出存储到Python中的文件中 我想做的是这样的 def test print This is a Test file open Log a file write test file close 但是当我这样做时 我收到
  • 如何使用 pybrain 黑盒优化训练神经网络来处理监督数据集?

    我玩了一下 pybrain 了解如何生成具有自定义架构的神经网络 并使用反向传播算法将它们训练为监督数据集 然而 我对优化算法以及任务 学习代理和环境的概念感到困惑 例如 我将如何实现一个神经网络 例如 1 以使用 pybrain 遗传算法
  • Cython 和类的构造函数

    我对 Cython 使用默认构造函数有疑问 我的 C 类 Node 如下 Node h class Node public Node std cerr lt lt calling no arg constructor lt lt std e
  • Jupyter Notebook 找不到 Python 模块

    不知道发生了什么 但每当我使用 ipython 氢 原子 或 jupyter 笔记本时都找不到任何已安装的模块 我知道我安装了 pandas 但笔记本说找不到 我应该补充一点 当我正常运行脚本时 python script py 它确实导入
  • Python3 在 DirectX 游戏中移动鼠标

    我正在尝试构建一个在 DirectX 游戏中执行一些操作的脚本 除了移动鼠标之外 我一切都正常 是否有任何可用的模块可以移动鼠标 适用于 Windows python 3 Thanks I used pynput https pypi or
  • 不同编程语言中的浮点数学

    我知道浮点数学充其量可能是丑陋的 但我想知道是否有人可以解释以下怪癖 在大多数编程语言中 我测试了 0 4 到 0 2 的加法会产生轻微的错误 而 0 4 0 1 0 1 则不会产生错误 两者计算不平等的原因是什么 在各自的编程语言中可以采
  • Python:XML 内所有标签名称中的字符串替换(将连字符替换为下划线)

    我有一个格式不太好的 XML 标签名称内有连字符 我想用下划线替换它 以便能够与 lxml objectify 一起使用 我想替换所有标签名称 包括嵌套的子标签 示例 XML
  • Python ImportError:无法导入名称 __init__.py

    我收到此错误 ImportError cannot import name life table from cdc life tables C Users tony OneDrive Documents Retirement retirem
  • Django-tables2 列总计

    我正在尝试使用此总结列中的所有值文档 https github com bradleyayers django tables2 blob master docs pages column headers and footers rst 但页
  • 如何计算Python中字典中最常见的前10个值

    我对 python 和一般编程都很陌生 所以请友善 我正在尝试分析包含音乐信息的 csv 文件并返回最常听的前 n 个乐队 从下面的代码中 每听一首歌曲都是一个列表中的字典条目 格式如下 album Exile on Main Street
  • 使用 z = f(x, y) 形式的 B 样条方法来拟合 z = f(x)

    作为一个潜在的解决方案这个问题 https stackoverflow com questions 76476327 how to avoid creating many binary switching variables in gekk
  • 使用随机放置的 NaN 创建示例 numpy 数组

    出于测试目的 我想创建一个M by Nnumpy 数组与c随机放置的 NaN import numpy as np M 10 N 5 c 15 A np random randn M N A mask np nan 我在创建时遇到问题mas

随机推荐

  • 除了 Google App Engine 之外还有 Python 云托管吗? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 等待进程结束异步,然后调用主窗体中的函数

    我正在用 C 编写一个游戏编辑器 我的程序通过启动 notepad exe 进程以 txt 文件打开 如果该进程退出 我想调用主窗体中的函数 以更新文本框 这是我到目前为止正在做的事情 void OpenTextEditor TreeNod
  • 从大表读取时出现 java.lang.OutOfMemoryError

    我正在尝试从 PostgreSQL 中的一个非常大的表 300GB 预先生成报告 我做了这样的事情 rs stmt executeQuery SELECT FROM tbl System out println select all fin
  • jQuery 的 jquery-1.10.2.min.map 正在触发 404(未找到)

    我看到有关文件的错误消息 min map 未找到 GET jQuery 的 jquery 1 10 2 min map 正在触发 404 未找到 截屏 这是从哪里来的 如果 Chrome DevTools 报告 map 文件的 404 可能
  • 循环比较宏

    我已经使用 Word 完成了一个文本比较宏 我需要循环它 以便它可以在几组文档之间进行比较 关于如何做到这一点有什么想法吗 这是我的代码 Dim template1 As Word Document Dim spool1 As Word D
  • Sqlalchemy:查询多态类的 m2m 关系

    我有两个通过多对多关系连接的类 Parent and Tag Base declarative base association table Table associations Base metadata Column parent id
  • Proguard 在不混淆的情况下进行收缩和优化

    在我的应用程序中 我有库项目依赖项 其中包含许多未使用的方法字段和类 由于这是一个第三方库 我不想自己删除所有未使用的类和方法 因为它是未来的更新 我正在尝试为此使用混淆器 但是 dontobfuscate 只会将整个项目排除在任何优化 缩
  • PHP 编译器 xdebug 警告

    PHP 新手 从事 PHP 项目并启用 xdebug 以便能够调试我的 PHP 应用程序 生产服务器没有启用 xdebug 因为它是由另一个团队处理的 在我的本地计算机上 当我运行 Composer 时 它会给我一个警告 You are r
  • 当只有一个子项可用时,最后一个子项样式会覆盖第一个子项样式

    ul li first child a border radius 5px 5px 0 0 ul li last child a border radius 0 0 5px 5px 当只有一个子项时 最后一个子项样式将覆盖第一个子项样式 有
  • Mysql 容器无法在 Kubernetes 上启动

    我正在使用this https hub docker com layers bitnami mysql 5 7 images sha256 87d11d41343c5404073f13b555e2849db4cb975f10e9b84ff4
  • pcntl_fork 在 PHP 中如何工作?

    我很困惑pcntl fork http php net pcntl fork in PHP 我认为它具有多线程功能 但它是如何工作的以及如何在脚本中使用它 PCNTL 不能创建线程 它仅 分叉 当前的 PHP 进程 这是什么意思 你打电话时
  • 无需更改 .NET 中的代码即可启用 TLS 1.2

    我有 NET 4 5 2 应用程序正在使用SmtpClient发送电子邮件 该应用程序安装在Windows 2012 R2服务器上 当我禁用 TLS 1 和 TLS 1 1 并仅启用 TLS 1 2 时 应用程序停止发送邮件 我认为这是因为
  • Android ViewPager 页面片段之间的填充/边距

    Android Market Google Music 似乎能够在包含在其中的不同片段之间存在某种间隙 ViewPager 知道这是如何做到的吗 向实际片段视图添加边距 填充不起作用 因为视图仍然需要占据屏幕的整个宽度 间隙 仅在滑动 Vi
  • 有某种方法可以禁用 Angular 2 中的一组输入吗?

    我在 md card 中有一些输入 有一种方法可以这样做
  • Bison/Yacc 语法中的无意串联

    我正在尝试 lex 和 yacc 并遇到了一个奇怪的问题 但我认为最好在详细说明问题之前向您展示我的代码 这是我的词法分析器 include
  • 如何有效地将阵列旋转±180°?

    对于 C 语言和衍生物 Python Cython 纯 C 使用最少的内存和操作将非方形 M N 数组绕其中心旋转 180 的最佳算法是什么 假设out是一个初始化的副本array M and N它们的行数和列数 我们使用从 0 到 M 1
  • Javascript 从 toLocaleDateString 解析日期以获取已知区域设置

    背景 在我的应用程序中 我想根据用户的区域设置设置日期格式 如果用户修改日期 我希望能够将其解析回 javascript Date 对象 Problem 我想知道是否可以使用 javascript 从本地格式化的字符串中解析日期 请考虑以下
  • PST 到 CSV 文件转换

    有谁知道通过命令行将 pst 转换为 csv 文件的好工具 您可以假设计算机上安装了 Outlook 吗 如果是这样 我相信它可以使用 OLE 或类似的东西进行后台脚本编写 我已经使用 Ruby 通过 Excel 完成了文件转换 这是一个P
  • 有没有办法将 SharedPreferences 存储到 SD 卡上?

    我编写了一个具有多个硬编码设置 例如 fontSize 或 targetDirectory 的应用程序 我希望能够偶尔更改这些类型的设置 SharedPreferences 似乎是解决此问题的一种方法 但我想共享此应用程序和设置 并且我的手
  • 使用参数从终端运行 Jython 脚本

    我想从命令行调用 Jython 脚本 例如 Applications Fiji app Contents MacOS ImageJ macosx headless little jython script py 我了解 Python 以及