python找出因数与质因数的方法


Posted in Python onJuly 25, 2019

最近有一个学弟问我一些求解质因数的问题,帮他解决问题的同时自己也试着写了几个差不多效果的脚本,有很多不同的思路,以下是相关脚本。

n = int(input("input number: ")) # 输入数字
fac = [] # 定义一个列表存放因子
for i in range(2, n): # 这里的逻辑和你一样
  if n % i == 0:
    fac.append(i) # 如果是因子就放进去
    continue
  else:
    pass
if len(fac) == 0: # 判断一下
  print("prime!")
else:
  print(fac)

这个是将所有的因数都放在一个列表里的做法。

def isprime(n): # 一个判断质数的方法,如果是质数,就返回这个数,如果不是质数,就什么也不返回
  for i in range(2, n):
    if n % i == 0:
      break
  else:
    return n 
 
num = int(input("input number: ")) # 输入一个数,存为num
i = 1 # 设置哨兵变量为1
if num >= 2: # 首先判断num是否符合判断条件
 
  while i <= num: # 注意这里一定要用while语句循环,因为哨兵变量最后要被更新
    i += 1 # i = i + 1 尝试遍历从1到num的所有数
    if num % i == 0: # 如果i是他的因子
      print(isprime(i)) # 先看这个因子是不是质数,是就输出
      num = num / i # 此时更新一下num
      # print("num is %s now!" % num) # 可以看看现在num是多少
      i = 1 # 记得把哨兵重新设置为1,这样循环才会更新,我一开始用for语句循环,发现没法从头开始循环
      pass # 继续
    else:
      pass # 若i不是num的因子,跳过
else:
  print("error") # 不符合条件,就输出错误

这是质因数分解的做法。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现的登录和操作开心网脚本分享
Jul 09 Python
Python中用format函数格式化字符串的用法
Apr 08 Python
详解Python中列表和元祖的使用方法
Apr 25 Python
解决Pycharm中import时无法识别自己写的程序方法
May 18 Python
Django跨域请求问题的解决方法示例
Jun 16 Python
PyCharm+PySpark远程调试的环境配置的方法
Nov 29 Python
python 自动重连wifi windows的方法
Dec 18 Python
Python中shapefile转换geojson的示例
Jan 03 Python
我用Python抓取了7000 多本电子书案例详解
Mar 25 Python
python调用Matplotlib绘制分布点图
Oct 18 Python
如何使用selenium和requests组合实现登录页面
Feb 03 Python
python math模块的基本使用教程
Jan 16 Python
HTML的form表单和django的form表单
Jul 25 #Python
Python3 批量扫描端口的例子
Jul 25 #Python
python3 批量获取对应端口服务的实例
Jul 25 #Python
Python实现微信小程序支付功能
Jul 25 #Python
Form表单及django的form表单的补充
Jul 25 #Python
python实现切割url得到域名、协议、主机名等各个字段的例子
Jul 25 #Python
python按修改时间顺序排列文件的实例代码
Jul 25 #Python
You might like
php实现根据url自动生成缩略图的方法
2014/09/23 PHP
PHP获取youku视频真实flv文件地址的方法
2014/12/23 PHP
使用PHP+Redis实现延迟任务,实现自动取消订单功能
2019/11/21 PHP
PHP实现腾讯短网址生成api接口实例
2020/12/08 PHP
csdn 批量接受好友邀请
2009/02/19 Javascript
jQuery实现图片放大预览实现原理及代码
2013/09/12 Javascript
js判断当前浏览器类型,判断IE浏览器方法
2014/06/02 Javascript
微信浏览器内置JavaScript对象WeixinJSBridge使用实例
2015/05/25 Javascript
javascript实现判断鼠标的状态
2015/07/10 Javascript
JS中使用正则表达式g模式和非g模式的区别
2017/04/01 Javascript
详解React Native顶|底部导航使用小技巧
2017/09/14 Javascript
iSlider手机端图片滑动切换插件使用详解
2019/12/24 Javascript
使用next.js开发网址缩短服务的方法
2020/06/17 Javascript
[02:01]2018完美盛典-开场舞《双子星》
2018/12/16 DOTA
python中assert用法实例分析
2015/04/30 Python
Python文件去除注释的方法
2015/05/25 Python
基于Django用户认证系统详解
2018/02/21 Python
在dataframe两列日期相减并且得到具体的月数实例
2018/07/03 Python
python的内存管理和垃圾回收机制详解
2019/05/18 Python
python+requests接口自动化框架的实现
2020/08/31 Python
HTML5和CSS3让网页设计提升到下一个高度
2009/08/14 HTML / CSS
html5+css3之CSS中的布局与Header的实现
2014/11/21 HTML / CSS
HTML5标签使用方法详解
2015/11/27 HTML / CSS
Opodo英国旅游网站:预订廉价航班、酒店和汽车租赁
2018/07/14 全球购物
澳大利亚手袋、珠宝和在线时尚精品店:The Way
2019/12/21 全球购物
查询优化的一般准则有哪些
2015/03/08 面试题
中专生的个人自我评价
2013/12/11 职场文书
2014年最新学习全国两会精神心得
2014/03/17 职场文书
企业年度评优方案
2014/06/02 职场文书
小学生放飞梦想演讲稿
2014/08/26 职场文书
绿色校园广播稿
2014/10/13 职场文书
八项规定自查自纠报告及整改措施
2014/10/26 职场文书
会议通知
2015/04/15 职场文书
我的1919观后感
2015/06/03 职场文书
运动会广播稿100字
2015/08/19 职场文书
python之np.argmax()及对axis=0或者1的理解
2021/06/02 Python