5月16日我终于来杭州传智黑马程序员python基础班报道了!
第一天班主任就让我们做自我介绍,很激动又恨胆怯.通过前面一轮的介绍我发现我们还真的是藏龙卧虎.有和我一样从事着不景气的行业破釜沉舟转行的,也有科班出身觉得自己学的不好来提升自我的,更有那种销售大咖想来挑战自我的.
每个人都有着各自不同的目的与使命,大家缘分般地走到了一起.
目前已学习了Python半个月,主要学习了变量,函数,if语法,elif语法,while语法,面向对象等知识重点.使我印象最深刻的是一个关于水仙花的题目,以下我就专门介绍一下该题另外一种解题思想:
打印出100到999的水仙花数
所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个水仙花数,因为153=1*1*1 + 5*5*5 + 3*3*3
一般的人碰到这题就会这样做:
for n in range(100, 999):
n1 = n // 100
n2 = (n // 10) % 10
n3 = n % 10
if n == n1 ** 3 + n2 ** 3 + n3 ** 3:
print(n)
大家一般情况肯定根据题意考虑取余取整来做此题,但是十位数取100还是取10容易混淆,接下来我们介绍一种简便的方法:
for n in range(100, 999):
str1 = str(n)
n1 = int(str1[0])
n2 = int(str1[1])
n3 = int(str1[2])
if n == n1 ** 3 + n2 ** 3 + n3 ** 3:
print(n)
此题我们用到了变量类型字符串的定义: 根据题意我们可将数字153转化为"153",这样我们解题就很容易了.
以后我们碰到了此类的题目,就可以利用学到的知识更加灵活方便快捷地解题,帮助我们更好理解.
|
|