1. Python编程实战:从基础算法到实用技巧
作为一名Python开发者,我经常遇到需要快速解决各类编程问题的场景。今天我想分享一组非常实用的Python编程题目及其解决方案,这些题目覆盖了从基础数学运算到文件处理、日期计算等多个领域。这些代码片段都经过我的实际验证,可以直接应用到你的项目中。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 素数判断与查找
2.1 素数判断函数实现
素数判断是编程中常见的基础问题。下面这个isPrime()函数采用了一种高效的实现方式:
python复制def isPrime(num):
if num == 2:
return True
for i in range(2, int(num**0.5)+1):
if num % i == 0:
return False
return True
这个实现有几个关键点值得注意:
- 单独处理数字2的情况,因为2是最小的素数
- 只需要检查到num的平方根即可,这大大减少了循环次数
- 一旦发现能被整除就立即返回False,避免不必要的计算
提示:在实际项目中,如果需要频繁判断素数,可以考虑使用埃拉托斯特尼筛法预先计算素数表,这样能显著提高后续判断的效率。
2.2 查找不超过n的最大素数
基于上面的isPrime()函数,我们可以实现查找不超过n的最大素数的功能:
python复制def main(n):
for i in range(n, 1, -1):
if isPrime(i):
return i
这个实现从n开始向下查找,找到的第一个素数就是最大的。这种逆向查找的方式效率很高,因为通常最大的素数都接近n本身。
3. 组合数学与特殊数列求和
3.1 组合数计算
组合数计算是排列组合中的基础问题,这里使用数学库的阶乘函数实现:
python复制from math import factorial
def main(n, i):
return factorial(n)//factorial(i)//factorial(n-i)
这个实现利用了组合数的阶乘公式C(n,i)=n
