放置一个 Python 内联变量

Placing a Python variable inline

请原谅这个相当基本的 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 修改变量值,所以它不能是静态的。

真的很简单,但是有人能给我指出正确的方向吗?

好的,据我了解你的问题,你需要定义一个变量,其值可以稍后更改,所以第一部分更容易,在 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)

尝试执行这一行,您就会明白它是如何工作的。

这是 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)