将Python变量放入内联

时间:2015-04-22 09:27:49

标签: python kodi

原谅这个相当基本的Python问题,但我确实很少有Python经验。我正在创建一个与Kodi一起使用的基本Python脚本:

http://kodi.wiki/view/List_of_built-in_functions

示例代码:

import kodi

variable = "The value to use in PlayMedia"

kodi.executebuiltin("PlayMedia(variable)")
kodi.executebuiltin("PlayerControl(RepeatAll)")

我不想直接为PlayMedia函数提供字符串值,而是希望将变量作为值传递。这个想法是另一个过程可能会用sed修改变量值,因此它不能是静态的。

非常简单,但有人能指出我正确的方向吗?

2 个答案:

答案 0 :(得分:1)

这是string formatting的简单案例。

template = "{}({})"
functionName = "function"  # e.g. input from user
arg = "arg"  # e.g. input from user
formatted = template.format(functionName, arg)
assert formatted == "function(arg)"
kodi.executebuiltin(formatted)

答案 1 :(得分:0)

好的,我得到你的问题你需要定义一个值,以后可以改变它的值,所以第一部分更容易,在python中定义变量就像new_song = "tiffny_avlord_I_love_u"一样简单,同样你可以定义另一个字符串为new_video = "Bohemia_on_my_feet",需要记住的是,在将变量定义为字符串时,需要将所有字符串封装在双引号"..."中(但是,单引号也能正常工作)

现在问题是如何更新它的价值,最简单的方法是从用户自己获取输入,这可以使用raw_input()完成:

new_song = raw_input("Please enter name of a valid song: ")
print "The new song is : "+new_song

现在用户在控制台上输入的内容将存储在变量new_song中,您可以使用此变量并将其传递给任何函数

some_function(new_song)

尝试执行此行,您将了解其工作原理。