我找不到以下代码之间的区别:
1。示例1
modules = ["os", "sys", "random"]
def intersection_sets(modules):
#for module in modules:
sets = [set(dir(__import__(module))) for module in modules]
return set.intersection(*sets)
a = intersection_sets(modules)
print(a)
2。示例2
print(100*"=")
modules = ['os', 'sys', 'random']
def intersection_sets(modules):
sets = [set(dir(__import__(module))) for module in modules]
return set.intersection(*sets)
print(intersection_sets(modules))
答案 0 :(得分:0)
a = intersection_sets(modules)
print(a)
在代码上方,将intersection_sets
返回的值设置为a
。
在下面的代码中,显示intersection_sets
print(intersection_sets(modules))
答案 1 :(得分:0)
两个代码样本都实现相同的结果/输出,但有两个细微差别。
第一个区别是在模块列表中。使用Python,您可以使用单引号或双引号编写字符串。只要关闭时使用与打开时相同的符号就没有关系。您也可以像这样混合它们:
modules = ['os', "sys", 'random']
第二个区别是打印函数结果的方式。当您使用返回值调用函数时,函数调用本身就等于返回值。因此,您可以将其保存为变量,然后如示例1所示打印该变量,也可以直接将其打印而无需如示例2所示进行保存。