Python 基础练习:从字母判断到随机数生成的 20 个实例解析

Evan
Evan
发布时间:2026-10-14| 5人浏览过
原创

本文精选 20 个 Python 基础编程实例,涵盖字符串处理、列表操作、函数定义、类与变量作用域、矩阵计算及随机数生成等核心知识点。通过具体代码示例,详细解析如何判断星期几、反向输出列表、计算素数与矩阵对角线和、实现变量交换及 Lambda 匿名函数的使用,帮助初学者巩固 Python 语法并提升编程实战能力。

实例 031:字母识词

题目要求:

编写程序,根据用户输入的星期几的首字母来判定具体的星期。若首字母相同,则需进一步判断第二个字母以区分。

程序分析:本例采用字典数据结构来存储星期英文单词的对应关系,通过嵌套字典或键值对快速匹配。


weekT={'h':'thursday',
       'u':'tuesday'}
weekS={'a':'saturday',
       'u':'sunday'}
week={'t':weekT,
      's':weekS,
      'm':'monday',
      'w':'wensday',
      'f':'friday'}
a=week[str(input('请输入第一位字母:')).lower()]
if a==weekT or a==weekS:
    print(a[str(input('请输入第二位字母:')).lower()])
else:
    print(a)

实例 032:反向输出 II

题目要求:

实现列表值的逆序输出功能。


a = ['one', 'two', 'three']
print(a[::-1])

实例 033:列表转字符串

题目要求:

将列表中的元素以逗号分隔符连接成一个字符串。


L = [1,2,3,4,5]
print(','.join(str(n) for n in L))


实例 034:调用函数

题目要求:

通过具体案例练习函数的定义与调用方法。


def hello():
    print('Hello World!')
def helloAgain():
    for i in range(2):
        hello()

if __name__=='__main__':
    helloAgain()

实例 035:设置输出颜色

题目要求:

在终端输出文本时,设置特定的颜色格式。


class bcolors:
    HEADER = '\033[95m'
    OKBLUE = '\033[94m'
    OKGREEN = '\033[92m'
    WARNING = '\033[93m'
    FAIL = '\033[91m'
    ENDC = '\033[0m'
    BOLD = '\033[1m'
    UNDERLINE = '\033[4m'
print(bcolors.WARNING + "警告的颜色字体?" + bcolors.ENDC)

实例 036:算素数

题目要求:

计算并输出 100 以内的所有素数。

程序分析:利用 else 语句处理 for 循环的正常结束情况(即未通过 break 退出循环时),以判断是否为素数。


lo=int(input('下限:'))
hi=int(input('上限:'))
for i in range(lo,hi+1):
    if i > 1:
        for j in range(2,i):
            if (i % j) == 0:
                break
        else:
            print(i)

实例 037:排序

题目要求:

对输入的 10 个数字进行排序处理。

程序分析:此处的排序逻辑与实例 005 保持一致。


raw=[]
for i in range(10):
    x=int(input('int%d: '%(i)))
    raw.append(x)

for i in range(len(raw)):
    for j in range(i,len(raw)):
        if raw[i]>raw[j]:
            raw[i],raw[j]=raw[j],raw[i]
print(raw)

实例 038:矩阵对角线之和

题目要求:

计算一个 3x3 矩阵主对角线上所有元素的总和。


mat=[[1,2,3],
     [3,4,5],
     [4,5,6]
    ]
res=0
for i in range(len(mat)):
    res+=mat[i][i]
print(res)

实例 039:有序列表插入元素

题目要求:

给定一个已排序的数组,输入一个新数字,要求按照原有排序规律将其插入数组中。

程序分析:首先比较新数与数组最后一个元素的大小,若需插入中间位置,则将插入点后的元素依次向后移动一位,腾出空间后插入。


lis=[1,10,100,1000,10000,100000]
n=int(input('insert a number: '))
lis.append(n)
for i in range(len(lis)-1):
    if lis[i]>=n:
        for j in range(i,len(lis)):
            lis[j],lis[-1]=lis[-1],lis[j]
        break
print(lis)

实例 040:逆序列表

题目要求:

将一个数组的内容进行逆序输出。

程序分析:可以通过依次交换首尾元素位置来实现,或者直接调用列表的 reverse 方法。


lis=[1,10,100,1000,10000,100000]
for i in range(int(len(lis)/2)):
    lis[i],lis[len(lis)-1-i]=lis[len(lis)-1-i],lis[i]
print('第一种实现:')
print(lis)


lis=[1,10,100,1000,10000,100000]
print('第二种实现:')
lis.reverse()
print(lis)

实例 041:类的方法与变量

题目要求:

模仿静态变量的使用方式。

程序分析:通过构造类,深入理解类的方法与变量之间的关系及用法。


def dummy():
    i=0
    print(i)
    i+=1

class cls:
    i=0
    def dummy(self):
        print(self.i)
        self.i+=1

a=cls()
for i in range(50):
    dummy()
    a.dummy()

实例 042:变量作用域

题目要求:

学习使用类似 auto 关键字定义的变量用法(在 Python 中体现为局部与全局变量的区别)。

程序分析:参考 python 语言中的变量作用域规则进行理解。


i=0
n=0
def dummy():
    i=0
    print(i)
    i+=1
def dummy2():
    global n
    print(n)
    n+=1
print('函数内部的同名变量')
for j in range(20):
    print(i)
    dummy()
    i+=1
print('global声明同名变量')
for k in range(20):
    print(n)
    dummy2()
    n+=10

实例 043:作用域、类的方法与变量

题目要求:

模仿静态变量 (static) 的另一个应用案例。

程序分析:综合实例 041 和实例 042 的内容,深入探讨作用域与类变量的交互。


class dummy:
    num=1
    def Num(self):
        print('class dummy num:',self.num)
        print('global num: ',num)
        self.num+=1

n=dummy()
num=1
for i in range(5):
    num*=10
    n.Num()

实例 044:矩阵相加

题目要求:

计算两个矩阵相加的结果。

程序分析:创建一个新的矩阵对象,使用 for 循环迭代并提取 X 和 Y 矩阵中对应位置的值,将相加后的结果存入新矩阵的对应位置。


X = [[12,7,3],
    [4 ,5,6],
    [7 ,8,9]]

Y = [[5,8,1],
    [6,7,3],
    [4,5,9]]

res=[[0,0,0],
    [0,0,0],
    [0,0,0]]
for i in range(len(res)):
    for j in range(len(res[0])):
        res[i][j]=X[i][j]+Y[i][j]
print(res)

实例 045:求和

题目要求:

统计并计算从 1 到 100 所有整数的和。


res=0
for i in range(1,101):
    res+=i
print(res)


实例 046:打破循环

题目要求:

获取用户输入的数字并计算其平方,如果平方运算后的结果小于 50,则退出循环。


while True:
    try:
        n=float(input('输入一个数字:'))
    except:
        print('输入错误')
        continue
    dn=n**2
    print('其平方为:',dn)
    if dn<50:
        print('平方小于50,退出')
        break

实例 047:函数交换变量

题目要求:

通过函数实现两个变量值的互换。


def exc(a,b):
    return (b,a)
a=0
b=10
a,b=exc(a,b)
print(a,b)

实例 048:数字比大小

题目要求:

进行数字之间的大小比较。


a=int(input('a='))
b=int(input('b='))
if a<b:
    print('a<b')
elif a>b:
    print('a>b')
else:
    print('a=b')


实例 049:lambda

题目要求:

使用 lambda 关键字创建匿名函数。


Max=lambda x,y:x*(x>=y)+y*(y>x)
Min=lambda x,y:x*(x<=y)+y*(y<x)

a=int(input('1:'))
b=int(input('2:'))

print(Max(a,b))
print(Min(a,b))

实例 050:随机数

题目要求:

输出一个随机数。

程序分析:需使用 random 模块来实现随机数的生成。


import random
print(random.uniform(10,20))

到此这篇关于 100 个 Python 小例子的文章就介绍到这了,更多相关 Python 小例子内容请搜索本站以前的文章或继续浏览下面的相关文章,希望大家以后多多支持本站!

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。