美文网首页
Python解决杨辉三角问题

Python解决杨辉三角问题

作者: EzraZhao | 来源:发表于2017-03-15 09:27 被阅读0次

    最近在学习Python,在看廖雪峰老师的博客的时候,其中一个练习题为杨辉三角问题,发现了一种很优雅的解法,现记录如下:

    # 题目如下:
    yanghui.png
    #!/usr/bin/env python3
    # -*- coding: utf-8 -*-
    def triangles():
        L = [1]
        while True:
            yield L
            L.append(0)
            L = [L[i - 1] + L[i] for i in range(len(L))]
    
    n = 0
    for t in triangles():
        print(t)
        n = n + 1
        if n == 10:
            break
    

    在这个解决办法中,充分利用了python语法中L[-1] == L[len(L) - 1]这点(L[-1]表示该List中最后一个元素),为简单起见,只输出前10行。输出为下:

    yanghuiout.png

    这个题目让我充分感觉到了Python的设计哲学:简单、优雅、高效。

    特此记录。

    相关文章

      网友评论

          本文标题:Python解决杨辉三角问题

          本文链接:https://www.haomeiwen.com/subject/qizknttx.html