用python写一个求质因数的函数
时间: 2023-10-18 18:04:37 浏览: 87
筛选法求质数表-Acm竞赛常用算法与数据结构
以下是一个用Python编写的求质因数的函数:
```python
def prime_factors(n):
factors = []
for i in range(2, n+1):
while n % i == 0:
factors.append(i)
n = n // i
if n == 1:
break
return factors
```
使用该函数可以找到一个数的所有质因数。例如:
```python
print(prime_factors(24)) # 输出 [2, 2, 2, 3]
print(prime_factors(17)) # 输出 [17]
```
该函数的基本思路是从2开始,依次尝试将n除以2、3、4、5、6...来判断是否是质因数,如果是,则将其添加到factors列表中,并将n除以该质因数。如果不是,则继续尝试下一个数。最后,如果n等于1,说明已经找到了所有的质因数,可以退出循环。
阅读全文