python小白第一问:水仙花数

  • g
    gdw1986
    我抠出来的代码是这样的:Capture.PNG
    但是我的结果不对,少了个371,求指导。
    网上的答案是这样的:
    for num in range(100, 1000):
    low = num % 10
    mid = num // 10 % 10
    high = num // 100
    if num == low ** 3 + mid ** 3 + high ** 3:
    print(num)


    我这思路是有点跑偏吗?
  • t
    tons
    最后那个break误事了吧?如果K循环有多个答案的话你这个只能打印第一个
  • f
    fqxufo
    可以找个可以debug的ide或者编辑器看看运行过程,看循环里每一步个个各个变量是什么值,不想用debug,也可以手动多print下
  • g
    gdw1986
    没意识到这个问题,感谢,换成continue就对了
  • a
    a6585998
    放continue什么作用?。。。。。。HiPDA怪兽版
  • h
    happyd8699
    continue也是多余。。。 iOS fly ~
  • G
    GleeU
    还有 你用那么多str是干啥 明明判断数字就行了 iOS fly ~
  • g
    gdw1986
    想了想确实没必要,去掉了
  • g
    gdw1986
    哦,注释部分是用数字比的,结果被break坑了,所以换字符比较下试试
  • t
    trokey
    学py'thon做什么用?web?爬虫?大数据?人工智能?
    建议先按照目的直接上,而不是在语法和算法细节上把热情慢慢好逛,小项目边做边学边深入。
  • g
    gdw1986
    好像有点道理,我试试吧,其实没啥明确目的,想做爬虫和Web应用,公司做大数据的,空窗期学点手艺
  • t
    tons
    回复9#gdw1986

    还有你这个算法是有点问题的,水仙花数算法计算一个N位数,N>=3,但你的算法是从0开始一直到999
  • k
    keshouz
    我学过来是代替vba用的,结果一发不可收拾,编了一堆没啥技术含量的小程序,用起来还是很方便,哈哈HiPDA·NG
  • t
    trokey
    那就找个网上的视频项目学,很快有东西出来,热情也高。
  • c
    cookite_li
    学习一下, 现在也开始学, 但不知到底做什么用. 有个打算,写个程序, 输入指定股票代码,要交易所官网上下指定的文件.
  • j
    jckimi
    回复6#happyd8699


    正解,这个地方啥都不用放。LZ的基础还是要巩固一下的。
  • g
    gdw1986
    多谢指导,找视频去了
  • t
    tinbug
    编程好像挺有意思啊,这是啥语言,我去研究下。。。原来标题里就有,我傻了
  • k
    kkzxak47
    别人有回调地狱,我大Python是缩进地狱,现在写代码第一追求是尽量消除缩进
  • a
    alzeng
    1. for o in range(100,1000):
    2. s = str(o)
    3. b =[s[:1],s[1:2],s[2:]]
    4. if eval('**3+'.join(b)+'**3') == o:
    5. print(o)
    复制代码