python为带有单引号的函数提供参数

时间:2017-07-09 19:14:43

标签: python

我有一个函数,为其他函数提供其参数

def errata_eus_repo(rhel_ver, cv_name):
    rhel_check = "Red Hat Enterprise Linux Extended Update Support" + " " + rhel_ver
    cv_name_errat = []
    for eus_repo in erra_eus_repo:
        errata = eus_repo[0]
        product = eus_repo[1]
        if product == rhel_check:
            cv_name_errat.extend([cv_name, errata])
            return cv_name_errat

def filter_ver(rhel_ver):
    regex = re.compile('\d{1}\.\d{1}')
    if not regex.match(rhel_ver):
        return False
    return True

for cv_rhel_ver in name_rhel:
    if not filter_ver(cv_rhel_ver):
        cv_name = str(cv_rhel_ver)
    if filter_ver(str(cv_rhel_ver)):
        rhel_ver = str(cv_rhel_ver)

    errata_eus_lst = errata_eus_repo(str(rhel_ver), str(cv_name))
    print(errata_eus_lst)

当我致电errata_eus_repo时,我无法获得结果

 errata_eus_lst = errata_eus_repo(str(rhel_ver), str(cv_name))

但是,如果我将变量直接发送到函数,我会得到正确的结果。

我认为问题可能是为参数errata_eus_repo(str("rhel_ver"), str("cv_name"))提供双引号,但我仍然没有得到任何结果。有任何想法吗?

1 个答案:

答案 0 :(得分:0)

引号仅用于传递文字变量名而不是变量包含的数据。您的问题在于如何在迭代周期中使用变量。

您在循环中的每次迭代中只初始化一个变量,rhel_vercv_name。 for循环应该给你一个错误。