为了账号安全,请及时绑定邮箱和手机立即绑定

麻烦大佬帮我看看有没有隐患或者代码风格不对

sum = 0 x = 0 while True:    x = x + 1    if x % 2 ==0:        continue    if x > 100:        break    sum = sum +x print sum 各位大佬  麻烦指证一下有没有隐患或者不规范的地方,看了你们的评论,我觉得这样是不是有什么隐患

正在回答

5 回答

你的那个代码写的 if x % 2 ==0:        continue    if x > 100:        break  先判断是否是奇数,然后判断是否大于100,这样在x=100的时候还会执行一遍最后x=101,当然量小无所谓,但是计算复杂就会多了一次计算……

0 回复 有任何疑惑可以回复我~
#!/usr/bin/env python
# -*- coding: utf-8 -*-
'''
task.py
对已有的计算 0 - 100 的while循环进行改造,通过增加 continue 语句,使得只计算奇数的和:

sum = 0
x = 1
while True:
    sum = sum + x
    x = x + 1
    if x > 100:
        break
print sum
'''

sum = 0.0
x = 0
while True:
    x = x + 1
    if x > 100:
        break
    if not x % 2 :     # 当x= 奇数时,3 % 2 = true , not 3%2 = not(非空字符串true),为false;
        continue       # 当x = 偶数时,4 %2 =0 ,python规定0 是flase ,not 4 % 2 = true。
    print x            # 如果 if 语句判断为 True,就会执行这个代码块,所以这代码过滤的是偶数
    sum = sum + x
print sum


0 回复 有任何疑惑可以回复我~
#!/usr/bin/env python
# -*- coding: utf-8 -*-
'''
task.py
对已有的计算 0 - 100 的while循环进行改造,通过增加 continue 语句,使得只计算奇数的和:

sum = 0
x = 1
while True:
    sum = sum + x
    x = x + 1
    if x > 100:
        break
print sum
'''

sum = 0.0
x = 0
while True:
    x = x + 1
    if x > 100:
        break
    if not x % 2 :     # 当x= 奇数时,3 % 2 = true , not 3%2 = not(非空字符串true),为false;
        continue       # 当x = 偶数时,4 %2 =0 ,python规定0 是flase ,not 4 % 2 = true。
    print x            # 如果 if 语句判断为 True,就会执行这个代码块,所以这代码过滤的是偶数
    sum = sum + x
print sum


0 回复 有任何疑惑可以回复我~

编程习惯,尽量少用while true,尽量不用break

0 回复 有任何疑惑可以回复我~
#1

伯纳乌球童 提问者

这个稍微有点体会了 谢谢
2018-03-14 回复 有任何疑惑可以回复我~
#2

伯纳乌球童 提问者

用什么代替呢
2018-03-14 回复 有任何疑惑可以回复我~

if那里错了

0 回复 有任何疑惑可以回复我~
#1

伯纳乌球童 提问者

怎么错了
2018-03-14 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758620    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

麻烦大佬帮我看看有没有隐患或者代码风格不对

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信