python简单实例训练(21~30)

针对您提出的问题,我将为您详细讲解“python简单实例训练(21~30)”的攻略。

一、简介

本篇攻略主要针对“python简单实例训练(21~30)”这10个练习题进行详细讲解,并提供相应的代码和解释。这些练习题涉及到Python中的基本语法、条件语句、循环语句等。

二、实例训练

21.有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13,...求出这个数列的前20项之和。

numerator = 2   # 分子
denominator = 1 # 分母
total = 0       # 总和
for i in range(20):
    total += numerator / denominator
    numerator, denominator = numerator+denominator, numerator
print(total)

解释:这是一个斐波那契数列的变形题,分子和分母分别为斐波那契数列的后一项与当前项之和和前一项的和。

22.求一个数的阶乘。

num = int(input("请输入一个正整数:"))
factorial = 1
for i in range(1, num+1):
    factorial *= i
print("{}的阶乘为{}".format(num, factorial))

解释:这是一个简单的for循环,用于计算输入的数的阶乘。

23.利用递归函数调用方式,将所输入的一串数字,以逆序输出。

def reverse_output(s):
    if len(s) == 0:
        return
    else:
        reverse_output(s[1:])
        print(s[0])

s = input("请输入一串数字:")
reverse_output(s)

解释:这是一个递归函数,通过不断递归调用至字符串为空,然后依次输出字符即可。

24.有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13,...求出这个数列的前20项之和。

numerator = 2   # 分子
denominator = 1 # 分母
total = 0       # 总和
for i in range(20):
    total += numerator / denominator
    numerator, denominator = numerator+denominator, numerator
print(total)

解释:这是一个斐波那契数列的变形题,分子和分母分别为斐波那契数列的后一项与当前项之和和前一项的和。

25.求1+2!+3!+...+20!的和。

result = 0
factorial = 1

for i in range(1,21):
    factorial *= i
    result += factorial
print(result)

解释:这是一道求阶乘之和的题目,需要通过for循环计算每个数的阶乘,再将阶乘求和。

26.利用递归方法求5!。

def factorial(num):
    if num <= 1:
        return 1
    return num * factorial(num - 1)

print(factorial(5))

解释:这是一个递归函数,通过不断递归调用至num <= 1时,返回1,然后逐层返回结果。

27.利用递归函数调用方式,将所输入的字符串反向输出。

def reverse_output(s):
    if len(s) == 0:
        return ""
    else:
        return s[-1] + reverse_output(s[:-1])

s = input("请输入字符串:")
print(reverse_output(s))

解释:这是一个递归函数,通过不断递归调用至字符串为空时,逐层返回结果字符串。

28.有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。

age = 0
for i in range(5):
    age += 2  # 依次增加2岁
    if i == 3:
        print("第四个人{}岁".format(age))
print("第五个人{}岁".format(age))

解释:这是一道简单的逻辑题,通过for循环不断增加年龄,输出第四个人的年龄和第五个人的年龄。

29.​给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。

num = int(input("请输入一个不多于5位的正整数:"))
print("该数字共有{}位".format(len(str(num))))
print("逆序打印各位数字为:")
for i in range(len(str(num))):
    print(num % 10)
    num //= 10

解释:这是一道带有取模和整除运算的题目,通过逐个取模和整除,输出各位数字。

30.一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。

num = input("请输入一个五位数:")
if num == num[::-1]:
    print("是回文数")
else:
    print("不是回文数")

解释:这是一道字符串逆序比较的题目,通过判断数字是否为逆序字符串即可判断其是否为回文数。

三、总结

本文对“python简单实例训练(21~30)”这10个练习题进行了详细讲解,并提供相应的代码和解释。这些练习题是Python基础知识的练习题,涉及到Python中的基本语法、条件语句、循环语句等。希望能够对大家理解及掌握Python编程有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python简单实例训练(21~30) - Python技术站

(0)
上一篇 2023年5月13日
下一篇 2023年5月13日

相关文章

  • Python爬虫实现模拟点击动态页面

    当我们需要爬取动态页面时,通常需要模拟点击操作来触发页面的动态加载。在本攻略中,我们将介绍如何使用Python爬虫实现模拟点击动态页面。以下是一个完整攻略,包括两个示例。 步骤1:安装Selenium库 首先,我们需要安装Selenium库,以便使用Python模拟浏览器操作。我们可以使用以下命令安装Selenium库: pip install seleni…

    python 2023年5月15日
    00
  • 分享一个常用的Python模拟登陆类

    下面我将会详细讲解如何分享一个常用的Python模拟登陆类,包含以下几个部分。 1. 确定模拟登陆的目标站点 在分享一个常用的Python模拟登陆类之前,我们首先需要明确登陆对象的目标站点。不同的站点,在模拟登陆过程中可能会有不同的实现方式和注意点。 例如,对于一些不需要验证码的网站,登陆过程可能就比较简单,只需要模拟发送一次POST请求,将用户名和密码等信…

    python 2023年6月3日
    00
  • 详解Python中使用base64模块来处理base64编码的方法

    使用base64模块可以在Python程序中进行base64编码和解码操作。以下为详细的步骤介绍: 1. 导入base64模块 在Python程序中使用base64模块需要先导入模块。 import base64 2. 对字符串进行base64编码 使用base64模块的b64encode方法可以对数据进行base64编码。该方法的语法如下: base64.…

    python 2023年5月31日
    00
  • 关于sys.stdout和print的区别详解

    关于sys.stdout和print的区别详解 在Python中,有多种方式可以将文本输出到控制台或文件,其中包括使用sys.stdout和print语句。虽然它们都可以用于输出文本,但它们之间存在一些重要的区别,下面我们将为您详细介绍这些区别。 sys.stdout的工作原理 sys.stdout是Python标准库中的一个对象,它代表着当前程序中需要标准…

    python 2023年6月3日
    00
  • python中urllib.request和requests的使用及区别详解

    以下是关于Python中urllib.request和requests的使用及区别详解的攻略: Python中urllib.request和requests的使用及区别详解 在Python中,urllib.request和requests都是常用的HTTP客户端库。以下是Python中urllib.request和requests的使用及区别详解的攻略。 u…

    python 2023年5月14日
    00
  • Python中可变和不可变对象的深入讲解

    Python中可变和不可变对象的深入讲解 在Python中,对象分为可变对象和不可变对象。在程序中使用对象时,了解它们的可变性是至关重要的。 不可变对象 不可变对象一旦被创建,就不能被改变。在Python中,整数、浮点数、字符串、元组和冻结集合(frozenset)都是不可变对象。 举个例子: a = 10 b = a a = 20 print(a, b) …

    python 2023年5月14日
    00
  • python计算圆周率pi的方法

    Python计算圆周率pi的方法 圆周率pi是一个非常重要的数学常数,它的值约为3.14159265358979323846。在Python中,我们可以使用多种方法算圆周率pi,本文将介绍其中的两种。 方法一:使用库计算圆周率pi Python中的math库提供一个常数pi,它表示圆周率的值。我们直接使用math库中的pi常数来计算圆周率,如下所示: imp…

    python 2023年5月14日
    00
  • python中decimal模块的用法

    概述 Python中decimal模块提供了高精度的计算功能,可以避免浮点数在计算机内部存储精度有限导致的精度误差。使用decimal模块可以进行精确的浮点数计算,保留精度到小数点后指定的位数,并且可以自由地进行四则运算、小数点移位、比较等操作。 基本用法 首先,我们需要导入decimal模块: import decimal 接下来,我们需要创建一个Deci…

    python 2023年5月18日
    00
合作推广
合作推广
分享本页
返回顶部