将python中的整数解析为另一个软件的命令

时间:2016-11-03 16:22:53

标签: python parsing

我想写

vol_id = geom.get_owning_volume("surface", 12)

我在大代码执行期间有S = 12,所以我使用

S=12
vol_id = geom.get_owning_volume("surface", "%d") %(S)

给了我一个错误

TypeError: in method 'get_owning_volume', argument 2 of type 'int'

我使用了变体

S=12
vol_id = geom.get_owning_volume("surface", "%d" %(S))

这给出了同样的错误

为什么我无法将整数12解析到所需的位置!有什么建议吗?

2 个答案:

答案 0 :(得分:1)

从我找到的documentationget_owning_volume取一个字符串和一个整数,你已经有了一个整数,所以不需要转换它:

vol_id = geom.get_owning_volume("surface", S)

从评论看起来S实际上是一个字符串,你想要一个整数,那么这应该有效:

vol_id = geom.get_owning_volume("surface", int(S))

答案 1 :(得分:1)

%运算符用于插入字符串,而不是Python代码。您的示例是尝试传递函数期望数字的字符串"%d";难怪它失败了!

在您的情况下,只需将变量S放在您需要的位置:

S=12
vol_id = geom.get_owning_volume("surface", S)