python判断水仙花数函数_Python(6):上机练习——函数练习之水仙花数
题目:
(1)创建一个函数,接受一个参数n(n>=100),判断这个数是否为水仙花数,结果返回True或者False。
水仙花数:满足如果这个数为m位数,则每个位上的数字的m次幂之和等于它本身
(2)创建一个函数,接受一个参数max(max>=1000),调用上题编写的判断函数,求100到max之间的水仙花数
IDE:
Thonny
(1)
过程:
① 接受参数n:n=input(‘请输入一个大于100的参数n:’)
此处需注意:input()的返回值是字符串格式
② 要判断n是否为水仙花数——>要得到每个位上的数字
思路1:除法,如153/100=1,(153-100)/10=5,(153-150)/1=3,太麻烦
思路2:尝试通过切片操作得到每位数
③ 用if语句判断是否相等
代码:
n=input('请输入一个大于100的参数n:')
m=len(n)
i=0
s=0
while i
s=s+int(n[i:i+1:1])**m
i=i+1
if int(n)<100:
print('请确认n是否大于100')
else:
if s==int(n):
print('True')
else:
print('False')
运行结果:
遇到的问题:
while拼写错误,运行代码一直显示符号不正确
int和str的区分,input返回n为字符串形式(后对字符串进行切片,切片后得到的也是str)
len()不能用于int型
m**n运算(求乘方)用于int型,切片后的str要变为int型再进行乘方
进行n和100的对比时,也要化为int型
len()是内置函数,返回对象的长度(元素个数)。实参可以是序列(如 string、bytes、tuple、list 或 range 等)或集合(如 dictionary、set 或 frozen set 等)。
(2)
过程
对(1)中的代码进行小修改
① 记住原代码中n是str型,而range() 函数创建的是整数列表,添加n=str(n),把range()生成的int转换为str
② print改为return,print只能打印,无法传递函数值
range()函数可创建一个整数列表,一般用在 for 循环中。
利用迭代循环for来对(100,max)间的整数进行水仙花数判定
创建一个空列表alist,如果是水仙花数,就用append操作把k加到列表中,迭代循环完毕后,else print最后统一打印
和(1)中同理,input返回值max是str型,放到range()中要转变为int型
代码
def wflower(n):
# n=input('请输入一个大于100的参数n:')
n=str(n)
m=len(n)
i=0
s=0
while i
s=s+int(n[i:i+1:1])**m
i=i+1
if int(n)<100:
print('请确认n是否大于100')
else:
if s==int(n):
return('True')
else:
return('False')
max=input('请输入参数max(max>=1000):')
alist=[]
for k in range(100,int(max)):
re=wflower(k)
if re=='True':
alist.append(k)
k=k+1
else:
print('100到max之间的水仙花数有:',alist)
python判断水仙花数函数_Python(6):上机练习——函数练习之水仙花数相关推荐
- python日期函数_python 时间及日期函数
本人最近新学python ,用到关于时间和日期的函数,经过一番研究,从网上查找资料,经过测试,总结了一下相关的方法. import time import datetime '''时间转化为时间戳: ...
- python拷贝文件函数_Python Set集合,函数,深入拷贝,浅入拷贝,文件处理
1.Set基本数据类型 a.set集合,是一个无序且不重复的元素集合 classset(object):"""set() -> new empty set obje ...
- python os函数_python os模块主要函数
使用python提供的os模块,对文件和目录进行操作,重命名文件,添加,删除,复制目录以及文件等. 一.文件目录常用函数 在进行文件和目录操作时,一般会用到以下几种操作. 1.获得当前:路径 在pyt ...
- load()是python文件操作的函数_python基础总结(函数,文件操作)
divmod(a, b)#分别取商和余数 float([x])#将一个字符串或数转换为浮点数.如果无参数将返回0.0 int([x[, base]])#将一个字符转换为int类型,base表示进制 l ...
- python 文件函数_python文件操作及函数学习
文件操作 文件读 f = open('a.txt', encoding='utf-8', mode='r') #只读方式打开文件 data = f.read() #read函数读取所有文件内容,光 ...
- python语言中有哪些函数_Python语言中的函数
本文主要向大家介绍了Python语言中的函数,通过具体的内容向大家展示,希望对大家学习Python语言有所帮助. 学了 Python 中的数据类型,语句,接下来就来说一下 Python 中的函数,函数 ...
- python判断是否为数字符_Python判断字符串是否为数字
Python判断一个字符串是否为数字,可以分为两种情况考虑. 字符为纯数字 如果需要检测的数字为纯数字,不包括负号,小数点等,可以使用字符串的isdigit()函数来判断 >>> a ...
- python数字类型转换函数_Python的数据类型转换函数
玩蛇网这篇文章给大家介绍关于,Python数据类型的转换函数. Python提供了一些可以把某个值从一种数据类型,转换成为另一种数据类型的内置函数和方法.int函数可以将任何可以转换为整型的值转换为整 ...
- python全局变量赋值报错_python全局变量、回调函数
1.python全局变量相关概念及使用 来自菜鸟教程上的例子: http://www.runoob.com/python3/python3-function.html 一.python入参需要注意地方 ...
- python hist函数_Python主要数据探索函数
Python中用于数据探索的库主要是pandas(数据分析)和 Matplotlib(数据可视化),其中pandas提供了大量的与数据库探索相关的函数,这些数据探索函数壳大致分为统计特征函数与统计绘图 ...
最新文章
- 为什么说python是世界上最好的语言-Python才是世界上最好的语言
- python可以自学吗-python自学行吗
- 微软Office Online服务安装部署及wopi代码实现--------域控制服务器安装
- 计算机jsp外文文献,计算机JSPweb外文翻译外文文献英文文献-20210615222802.docx-原创力文档...
- PHP面试题:windows平台, Apache Http Server启动失败, 排错思路是什么?
- 数据库中敏感字段的标记、标示
- 【Java】基数排序
- Android--使用Camera拍照
- 星环分析型数据库Inceptor中database link的使用总结
- 爱尚QQ网修改QQ在线机型源码
- 在HTML文字标签i什么效果,html的i标签有什么作用
- 数据库锁 与 事务隔离级别
- 软工作业04四则运算网页版
- A/BTest 基础
- Android 属性动画使用(二)
- jQuery mouseover与mouseenter,mouseout与mouseleave的区别
- Excel 经纬度互相转换
- 大数据与云计算——牛客网大数据面试问题总结
- MySQL的文本导入之load data local
- 【Python爬虫】下载b站视频。超详细。