放置一个 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)
请原谅这个相当基本的 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)