广州番禺Python, Java小班周末班培训
薯条老师的线下Python小班办得很好,学员的平均就业薪资有11K。线下小班培训的课程有Python爬虫,Python后端开发,Python办公自动化,Python大数据分析,Python量化投资,Java中高级后端开发。授课详情请点击:http://chipscoco.com/?cate=6
3.2.1 算法思路
首先得理解什么是水仙花数。仙花数是指一个正的3位数,它的每个位上的数字的3次幂之和等于它本身。153就是一个典型的水仙花数:
所以判断一个数是否为水仙花数,只需将每位的数字取出来,然后将它们的3次幂相加求和。取出每一位的数字,可使用求余+整除法,例如将153与10进行模运算,余数为3,然后再将153与10整除,可得到15。不断重复这样的过程,直到被除数小于1。以下是取出每位数的代码实现:
number = 153 # 获取个位数 the_unit = number // 1 % 10 # 获取十位数 the_ten = number // 10 % 10 # 获取百位数 the_hundred = number // 100 % 10
算法逻辑比较简单,只需在循环中不断更新每位的权值即可:十进制个位的权值位10的0次方,十进制百位的权值为10的1次方,以此类推。在本节的算法实现中,稍微加大难度,使用递归来实现。
3.2.2 算法实现
# __author__ = 薯条老师 def is_narcissistic_number(number): # 递归计算每位的三次幂之和 def __sum(number): # 将当前number与10取模,可得到最低位的数字,然后将与10整除后的值传递给递归调用 # 如果当前的number小于1,说明已经将最高位的数整除,直接返回0。 return 0 if number < 1 else (number % 10) ** 3 + __sum(number // 10) return True if number == __sum(number) else False if __name__ == "__main__": number = 370 print("{} 是水仙花数".format(number)) if \ is_narcissistic_number(number) else print("{}不是水仙花数".format(number))
在理解递归调用时,需要找到递归的退出边界,上文代码中的number小于1就是一个退出边界,一旦参数小于1即终止递归的执行。同学们在必要时可以将递归调用的每一步画出来,这样更容易理解。
3.2.3 最具实力的小班培训
来这里参加Python和Java小班培训的学员大部分都找到了很好的工作,平均月薪有11K,学得好的同学,拿到的会更高。由于是小班教学,所以薯条老师有精力把每位学员都教好。打算参加线下小班培训的同学,必须遵守薯条老师的学习安排,认真做作业和项目。把知识学好,学扎实,那么找到一份高薪的工作就是很简单的一件事。
(1) Python后端工程师高薪就业班,月薪11K-18K,免费领取课程大纲
(2) Python爬虫工程师高薪就业班,年薪十五万,免费领取课程大纲
(3) Java后端开发工程师高薪就业班,月薪11K-20K, 免费领取课程大纲
(4) Python大数据分析,量化投资就业班,月薪12K-25K,免费领取课程大纲
扫码免费领取学习资料: