将 argparse dict 形字符串从 pycharm 传递到远程解释器(本地赢,远程 nix)
Posted
技术标签:
【中文标题】将 argparse dict 形字符串从 pycharm 传递到远程解释器(本地赢,远程 nix)【英文标题】:passing argparse dict shaped string from pycharm to a remote interperter (local win,remote nix) 【发布时间】:2017-04-27 10:02:01 【问题描述】:我有以下配置:
在本地 win7 机器上使用远程 unix 机器作为解释器的 pycharm。
我尝试运行的代码从 argparse 接收一个 dict 格式字符串,并使用 eval 将其变成一个 dict。
这在通过 ssh 运行时有效,但在使用脚本参数从 pycharm 运行时失败,
我已经能够使用 \ 来转义 和 " 了:
--input_paths \\"kk1\":\[\"/sandbox/23\"]\
但添加更多键:
--input_paths \\"kk1\":[\"/sandbox/23\"],\"kk2\":[\"/sandbox/23\"]\
结果:
argtest.py: error: unrecognized arguments: "kk2":["/sandbox/23"]
有什么想法吗?
【问题讨论】:
我认为您不会在 kk2 之前的 ',' 之前转义 ']',对吧? 你是对的,但这没什么区别(我认为不需要转义 ] 我会在几秒钟内编辑问题) 【参考方案1】:可能为时已晚,但我发现你需要有类似的参数。
\"kk1\":\"asd\",\"kk2\":\"asd\"
单引号和双引号在我的经验中也很重要。
希望这对某人有所帮助。
【讨论】:
以上是关于将 argparse dict 形字符串从 pycharm 传递到远程解释器(本地赢,远程 nix)的主要内容,如果未能解决你的问题,请参考以下文章
Python argparse - 带有 dict 选项的选项
编程54--python学习28Namespace与dict的相互转换,保存Namespace,以字典形式传入argparse的参数