PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
Python
[问题] 求左右对称的数字和总数
楼主:
st936904
(阿姆斯特朗旋风喷射阿姆)
2016-11-11 02:44:45
大家好 我是自学的新手
题目是: 找出n位数中有几个回文数
回文数是指例如121,1331,22,15151
这种左右颠到写过来仍是一样的数
我的写法
def f(x):
x = str(x)
if x[::]==x[::-1]:
return Ture
else :
return False
def f_count(n) :
for i in range(10,10**n):
count=0
while f(i) is Ture :
count +=1
return (count)
第一个函数是说输入一个数判断他是不是回文数
然后第二个函数是指输入n位数(例如2位数)
然后符合第一个函数的情况下就+1
可是我下去跑不管n是几
print(f_count(n))的答案跑下去都是0
请问到底是哪边出了问题还是我哪边的观念错误呢?
作者:
uranusjr
(â†é€™äººæ˜¯è¶…級笨蛋)
2016-11-11 02:48:00
while f(i) is Ture 试着解释这行的意思
作者:
wtf111
(Optimus)
2016-11-11 03:29:00
我想表达如果他符合第一个函数就数量就+1 我也觉得这边用错误的方式表达这句 只是试了一个多小时还是想不透
作者:
MOONY135
(谈无欲)
2016-11-11 06:19:00
While f(I):你每跑一次循环count都从0开始 是能记多少次...加上你最后一个数字是10的某个次方 那肯定不会进while循环啊 所以答案总是0
作者:
papple23g
(逆道者)
2016-11-11 09:20:00
True
作者: losepacific (Losepacific)
2016-11-11 20:14:00
count=0提到for循环的外面,while改用if;注意缩排。修正错字True之后,按照你贴文的缩排,应该会是1。
楼主:
st936904
(阿姆斯特朗旋风喷射阿姆)
2016-11-12 01:24:00
各位我懂了! 我这边是因为count的位置放错以及要把while改成if 会成功。然后True打错满丢脸的。谢谢楼上几位教学,顺带一下像这种位置问题我常常会搞混是因为不够习惯才会这样吗?
作者:
MOONY135
(谈无欲)
2016-11-12 20:29:00
不是不够习惯的问题 是你根本还弄不懂循环在干嘛
http://www.codeskulptor.org/viz/index.html
这个线上编译器有跑你每一步的功能 可以拿来练习先把基本教程 for循环while循环那些都看完再说吧虽然每本程式书都会教那个 不过那是要会某种语言之后才可以跳过的
楼主:
st936904
(阿姆斯特朗旋风喷射阿姆)
2016-11-12 23:47:00
M大太感谢你了 我就是想要找一个这种能知道我在干嘛的东西
作者:
edisonhello
(edison)
2016-11-13 19:40:00
这题根本用不到循环吧
作者:
MOONY135
(谈无欲)
2016-11-14 06:46:00
最终都还是要学编译器debug的 这些简单的用这款还行
继续阅读
[问题] list内元素搬移的问题
icetofux
[问题] 如何转换ctype array至Python List
fredchou
[问题] Matplotlib资料缺失之线段呈现[解决]
coolching
[问题] 安装问题
GooLoo
Re: [问题] random 的不随机
JokePtt
[问题] random 的不随机
JokePtt
[求问]学过统计分析对学机器学习有帮助吗?
philipk
[问题] 关于BeautifulSoup遇到没有资料的时候
brightsu
[问题] 在PTVS中import caffe导致错误
hardman1110
[问题]最佳化求解
Muhaosic
Links
booklink
Contact Us: admin [ a t ] ucptt.com