Python入门基础小练习

通过前面的两个篇章Python-入门基础篇Python-入门基础语句篇大家应该已经认识了python基础的语句和函数了,并且可以使用pycharm编译器创建.py文件进行运行了,今天适当的来一些小练习,给枯燥的学习增添一些趣味性。

  • 判断一个数是否为偶数
# 定义一个变量
num = 10

# 判断是否为偶数
if num % 2 == 0:
    print(num, "是偶数")
else:
    print(num, "是奇数")
  • 计算两个数的乘积
# 定义两个变量
a = 3
b = 5

# 计算乘积
result = a * b

# 打印结果
print(a, "和", b, "的乘积是:", result)
  • 打印出 1-10 的数字

循环打印数字

for i in range(1, 11):
    print(i)
  • 猜数字游戏

导入 random 模块,用于生成随机数

import random

生成一个随机数

num = random.randint(1, 10)

循环猜数字

while True:
    # 提示用户输入数字
    guess = int(input("请猜一个 1-10 之间的整数:"))
    
    # 判断是否猜中了
    if guess == num:
        print("恭喜你,猜中了!")
        break
    elif guess < num:
        print("猜的数字太小了,再试试!")
    else:
        print("猜的数字太大了,再试试!")
  • 计算阶乘
# 定义一个函数,计算阶乘
def factorial(n):
    if n == 0:
        return 1
    else:
        return n * factorial(n-1)

# 调用函数,计算阶乘
num = 5
result = factorial(num)

# 打印结果
print(num, "的阶乘是:", result)

这段代码定义了一个计算阶乘的函数factorial(n),接受一个整数参数n,返回它的阶乘值。当n等于0时,函数返回1;否则,函数通过递归调用自身计算n的阶乘值。

在主程序中,变量num被赋值为5,然后调用factorial(num)函数来计算num的阶乘值。最终结果被存储在变量result中。

最后,程序打印了结果字符串,使用了字符串拼接的方式将num的值和计算结果一起输出。


详细一点来讲就是:
函数factorial(n)首先检查n是否等于0。如果是,它返回1,因为0的阶乘是1。如果不是,它递归调用自身,将n-1作为参数,并将返回值乘以n,得到n的阶乘。

在这里,我们传入参数5,factorial(5)会计算5 * factorial(4),而factorial(4)会计算4 * factorial(3),一直递归到factorial(0),这里直接返回1。然后,每个递归调用的结果都将被乘以调用它的函数的参数,最终得到5的阶乘120。

主程序中,我们调用factorial(5)并将结果存储在result中,然后使用print语句打印输出字符串。


ps:在 Python 中编写代码时,要特别注意缩进规则 python缩进规则


  • 计算字符串中字符的个数
# 定义一个字符串
str = "hello world"

# 计算字符串中字符的个数
count = 0
for char in str:
    count += 1

# 打印结果
print(str, "中字符的个数是:", count)
  • 判断一个字符串是否为回文串
# 定义一个字符串
str = "level"

# 判断是否为回文串
if str == str[::-1]:
    print(str, "是回文串")
else:
    print(str, "不是回文串")
  • 求两个数的最大公约数和最小公倍数
# 定义两个数
a = 12
b = 16

# 计算最大公约数
x = a
y = b
while y != 0:
    r = x % y
    x = y
    y = r
gcd = x

# 计算最小公倍数
lcm = a * b // gcd

# 打印结果
print(a, "和", b, "的最大公约数是:", gcd)
print(a, "和", b, "的最小公倍数是:", lcm)

补充:

这段代码的功能是计算两个数的最大公约数和最小公倍数。

  1. 首先,定义了两个整数变量a和b,它们分别被赋值为12和16。
    a = 12
    b = 16
  2. 接下来定义了两个变量x和y,它们的值分别赋为a和b。x和y将用于计算最大公约数。
    x = a
    y = b
  3. 接下来定义了两个变量x和y,它们的值分别赋为a和b。x和y将用于计算最大公约数。
while y != 0:
    r = x % y
    x = y
    y = r
gcd = x

这是计算最大公约数的代码块。while循环的条件是y不等于0,如果y等于0,那么x就是a和b的最大公约数。在while循环中,通过不断使用辗转相除法的方式,将x和y的值进行更新,直到y等于0时,最终得到的x就是a和b的最大公约数。
辗转相除法的基本思想是:设x和y为两个正整数,r为它们的余数,那么x和y的最大公约数等于y和r的最大公约数。在每次循环中,通过计算x除以y的余数r,然后将x赋值为原来的y,y赋值为原来的r,这样不断更新x和y的值,直到y等于0时结束循环。

lcm = a * b // gcd

这一行代码用于计算最小公倍数。lcm变量被赋值为a和b的积除以它们的最大公约数,即最小公倍数等于两个数的积除以它们的最大公约数。

print(a, "和", b, "的最大公约数是:", gcd)
print(a, "和", b, "的最小公倍数是:", lcm)

最后通过print语句将a、b的最大公约数和最小公倍数输出。

ps:

最大公约数是指两个或多个整数共有的约数中,最大的一个;最小公倍数则是指两个或多个整数公共的倍数中,最小的一个。在实际问题中,最大公约数和最小公倍数经常用于化简分数、解决同余方程等。

  • 实现一个简单的计算器
# 定义一个函数,实现加法
def add(a, b):
    return a + b

# 定义一个函数,实现减法
def subtract(a, b):
    return a - b

# 定义一个函数,实现乘法
def multiply(a, b):
    return a * b

# 定义一个函数,实现除法
def divide(a, b):
    if b == 0:
        return "错误:除数不能为 0"
    else:
        return a / b

# 用户输入操作数和运算符
num1 = float(input("请输入第一个操作数:"))
op = input("请输入运算符:")
num2 = float(input("请输入第二个操作数:"))

# 根据运算符调用相应的函数进行计算
if op == "+":
    result = add(num1, num2)
elif op == "-":
    result = subtract(num1, num2)
elif op == "*":
    result = multiply(num1, num2)
elif op == "/":
    result = divide(num1, num2)
else:
    result = "错误:不支持的运算符"

# 打印结果
print("计算结果是:", result)

这些小练习对于初学者来说可以先不求甚解的跟着写一写,等到累计了更多的python知识再来看这些会觉得原来很简单,不要把太多的时间浪费在这里,打好基础才是最重要的!
最后 — Python 是一门非常有用的编程语言,可以用来解决各种各样的问题。它的语法简洁明了,非常容易上手,而且有很多丰富的库和工具可供使用,让你能够更高效地开发出自己的程序。在未来的生活和工作中发挥重要的作用,加油在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/ultramand/article/details/130253223