如何在python(2.7)中执行计算并捕获变量'results'中的输出?
输入:
let calculation = '(3*15)/5'
let formatting = '\\%2d'
let grouping = '0'
exe "python -c \"import math, locale; locale.format(formatting, calculation, grouping)\""
并在变量results
输出:
results ='9'
PS:
是否有可能在python中包装我的计算的第一部分,类似于vim中的eval()函数?
体育
let command = 'python -c \"import math, locale\"'
exe "eval(command); locale.format(formatting, calculation, grouping)"
答案 0 :(得分:3)
嗯... :let foo = (3*15)/15
。
无论如何,您可以使用:let foo = system('mycommand')
:
:let foo = system("python -c 'print (15*3)/5'")
由你决定将字符串放在一起。
答案 1 :(得分:1)
我曾写过一个脚本来在vim中进行数字计算。它支持三种表达式评估引擎:GNU bc, vimscript and python
。
它被称为HowMuch
:https://github.com/sk1418/HowMuch
对于python部分,你可以在这里查看:
https://github.com/sk1418/HowMuch/blob/master/autoload/HowMuch.vim#L285
希望它有所帮助。