Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用函数在列表中显示数字_Python - Fatal编程技术网

Python 使用函数在列表中显示数字

Python 使用函数在列表中显示数字,python,Python,我有一个数字列表,我必须使用一个函数以摄氏度显示它们,它们现在是华氏度 nums = [30,34,40,36,36,28,29,32,34,44,36,35,28,33,29,40,36,24,26,30,30,32,34,32,28,36,24,32] def fahrenToCel(c): c = (f - 32) * (5 / 9) return c print fahrenToCel(nums) 这就是我所拥有的,如果您有一个列表the_list,并且您想对每个元素应

我有一个数字列表,我必须使用一个函数以摄氏度显示它们,它们现在是华氏度

nums = [30,34,40,36,36,28,29,32,34,44,36,35,28,33,29,40,36,24,26,30,30,32,34,32,28,36,24,32]
def fahrenToCel(c):
    c = (f - 32) * (5 / 9)
    return c
print fahrenToCel(nums)

这就是我所拥有的,如果您有一个列表
the_list
,并且您想对每个元素应用函数
f
,创建一个新的结果列表,请有人帮助我:

new_list = [f(x) for x in the_list]

您的函数似乎只接受一个数字作为输入,但您给它一个数字列表。如果要使用该函数生成已转换数字的列表,可以使用列表理解:

cels = [fahrenToCel(fah) for fah in nums]
这不仅会创建一个新列表,还会将其作为逗号分隔的字符串连接起来

如果
nums
相当长,可以使用生成器表达式而不是列表理解来节省一些内存和性能。你只需要去掉方括号:

print ','.join(str(fahrenToCel(fahren)) for fahren in nums)

最简单的方法是使用for循环迭代列表并打印每个结果:

#!/usr/bin/env python

# def farentoCel(x): ...
# ...

if __name__ == '__main__':
    import sys

    for each_num in sys.argv[1:]:
        print farentoCel(int(each_num))
正如其他人所说,您可以用列表理解(表达式),甚至生成器理解(在较新版本的Python中)来替换这个显式循环

在本例中,我将展示一个非常简单的框架,供您用于测试简单函数。if name=='\umain:套件是一种Python约定,用于将函数、类和其他定义与代码的运行时分离。这可以用来构造代码,以便在其他代码中重复使用(导入),同时还可以在命令行实用程序(包装器)中公开某些功能或提供默认界面(可能是GUI)


在相当常见的情况下,如果您的模块没有简单可访问的实用程序(只有合并到其他代码中时才有用),那么您可以使用“main”套件来包含单元测试用例。

确切地说,问题是什么?请自己做作业。这是连续第五个问题,您只需将每个答案中的代码复制/分页到下一个问题。通过随机提问学习如何编程是一个乏味而缓慢的过程。您可能希望——由一位思考过如何一次一个地引入编程概念的人编写,其中有大量的示例和需要您解决的问题——无疑会比在这里四处寻求帮助带来更好的结果。我们很乐意帮忙,但这似乎是一种更有用的消磨夜晚的方式。
#!/usr/bin/env python

# def farentoCel(x): ...
# ...

if __name__ == '__main__':
    import sys

    for each_num in sys.argv[1:]:
        print farentoCel(int(each_num))