原谅这个相当基本的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修改变量值,因此它不能是静态的。
非常简单,但有人能指出我正确的方向吗?
答案 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)
尝试执行此行,您将了解其工作原理。