-2

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

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

4

2 回答 2

2

这是字符串格式化的简单案例。

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)
于 2015-04-22T09:58:56.943 回答
0

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

现在的问题是如何更新它的 value ,最简单的方法是从用户本身获取输入,这可以使用raw_input()as 来完成:

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

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

some_function(new_song)

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

于 2015-04-22T09:46:24.570 回答