412. Fizz Buzz

Write a program that outputs the string representation of numbers from 1 to n.

But for multiples of three it should output “Fizz” instead of the number and for the multiples of five output “Buzz”. For numbers which are multiples of both three and five output “FizzBuzz”.

Example:

n = 15,

Return:
[
"1",
"2",
"Fizz",
"4",
"Buzz",
"Fizz",
"7",
"8",
"Fizz",
"Buzz",
"11",
"Fizz",
"13",
"14",
"FizzBuzz"
]

  自己答案:

class Solution(object):
         def fizzBuzz(self, n):
      a = []
      i = 1
      while(i <= n):
        if(i%15 == 0):
          a.append("FizzBuzz")

        elif(i%3 == 0):
          a.append("Fizz")
        elif(i%5 == 0):
          a.append("Buzz")

        else:
          a.append(str(i))
        i = i + 1
      return a

  经典答案:

1.

class Solution(object):
def fizzBuzz(self, n):
return [str(i) if (i%3!=0 and i%5!=0) else (('Fizz'*(i%3==0)) + ('Buzz'*(i%5==0))) for i in range(1,n+1)]

2.

class Solution(object):
def fizzBuzz(self, n):
return["Fizz"*(not i%3) + "Buzz"*(not i %5) or str(i) for i in range(1,n+1)]

自己的答案没有考虑到列表生成式,没有发挥出Python特点:优雅、简介

列表生成式资料:

http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/00138681963899940a998c0ace64bb5ad45d1b56b103c48000

 

最新文章

  1. Kooboo CMS - 之后台注册用户流程方法。
  2. 烂泥:openvpn配置文件详解
  3. [转载]config文件的一个很好的实现
  4. hadoop搭建初步总结
  5. Java中常用修饰符使用汇总
  6. [zt]OpenCV2.1.0的安装
  7. iOS后台运行
  8. Linux内核等待队列
  9. topcoder srm 628 div2 250 500
  10. 基于注解的SpringMVC整合JPA
  11. 下拉菜单选择(jQuery实现)
  12. C#程序设计基础——变量
  13. 简单讨论一下 jQuery 事件
  14. (转)关于eclipse的TestNG的插件安装方法
  15. Js拾忆
  16. qml: 组件复用
  17. Java基础3-数组操作;类概述
  18. jsonify
  19. 尚硅谷springboot学习22-Thymeleaf入门
  20. AndroidManifest 配置主活动

热门文章

  1. 嵌入式Linux驱动学习之路(十三)按键驱动-异步通知
  2. three.js添加文字
  3. MBR与GPT
  4. 对 Python 语法不够了解导致的 bug
  5. Android EventBus实战 没听过你就out了
  6. 序列化效率比拼——谁是最后的赢家Newtonsoft.Json
  7. CCF 201604-2 俄罗斯方块
  8. 85 megacli-查看raid信息
  9. GRE与Vxlan网络详解
  10. java中Arraylist复制方法