100 个 Python 小例子(练习题)

147 篇文章 0 订阅
62 篇文章 0 订阅

前言

实例001:数字组合

题目: 有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?

程序分析: 遍历全部可能,把有重复的剃掉。

total=0
for i in range(1,5):
    for j in range(1,5):
        for k in range(1,5):
            if ((i!=j)and(j!=k)and(k!=i)):
                print(i,j,k)
                total+=1
print(total)

简便方法: 用itertools中的permutations即可。

import itertools
sum2=0
a=[1,2,3,4]
for i in itertools.permutations(a,3):
    print(i)
    sum2+=1
print(sum2)

【----帮助Python学习,以下所有学习资料文末免费领!----】

实例002:“个税计算”

题目: 企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?

程序分析: 分区间计算即可。

profit=int(input('Show me the money: '))
bonus=0
thresholds=[100000,100000,200000,200000,400000]
rates=[0.1,0.075,0.05,0.03,0.015,0.01]
for i in range(len(thresholds)):
    if profit<=thresholds[i]:
        bonus+=profit*rates[i]
        profit=0
        break
    else:
        bonus+=thresholds[i]*rates[i]
        profit-=thresholds[i]
bonus+=profit*rates[-1]
print(bonus)

实例003:完全平方数

题目: 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?

程序分析: 因为168对于指数爆炸来说实在太小了,所以可以直接省略数学分析,用最朴素的方法来获取上限:

n=0
while (n+1)**2-n*n<=168:
    n+=1

print(n+1)
----------

85

思路是:最坏的结果是n的平方与(n+1)的平方刚好差168,由于是平方的关系,不可能存在比这更大的间隙。 至于判断是否是完全平方数,最简单的方法是:平方根的值小数为0即可。 结合起来:

n=0
while (n+1)**2-n*n<=168:
    n+=1

for i in range((n+1)**2):
    if i**0.5==int(i**0.5) and (i+168)**0.5==int((i+168)**0.5):
        print(i-100)

实例004:这天第几天

题目: 输入某年某月某日,判断这一天是这一年的第几天?

程序分析: 特殊情况,闰年时需考虑二月多加一天:

def isLeapYear(y):
    return (y%400==0 or (y%4==0 and y%100!=0))
DofM=[0,31,28,31,30,31,30,31,31,30,31,30]
res=0
year=int(input('Year:'))
month=int(input('Month:'))
day=int(input('day:'))
if isLeapYear(year):
    DofM[2]+=1
for i in range(month):
    res+=DofM[i]
print(res+day)

实例005:三数排序

题目: 输入三个整数x,y,z,请把这三个数由小到大输出。

程序分析: 练练手就随便找个排序算法实现一下,偷懒就直接调函数。

raw=[]
for i in range(3):
    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)


raw2=[]
for i in range(3):
    x=int(input('int%d: '%(i)))
    raw2.append(x)
print(sorted(raw2))

实例006:斐波那契数列

题目: 斐波那契数列。

程序分析: 斐波那契数列(Fibonacci sequence),从1,1开始,后面每一项等于前面两项之和。图方便就递归实现,图性能就用循环。

# 递归实现
def Fib(n):
    return 1 if n<=2 else Fib(n-1)+Fib(n-2)
print(Fib(int(input())))

# 朴素实现
target=int(input())
res=0
a,b=1,1
for i in range(target-1):
    a,b=b,a+b
print(a)

实例007:copy

题目: 将一个列表的数据复制到另一个列表中。

程序分析: 使用列表[:],拿不准可以调用copy模块。

import copy
a = [1,2,3,4,['a','b']]

b = a                   # 赋值
c = a[:]                # 浅拷贝
d = copy.copy(a)        # 浅拷贝
e = copy.deepcopy(a)    # 深拷贝

a.append(5)
a[4].append('c')

print('a=',a)
print('b=',b)
print('c=',c)
print('d=',d)
print('e=',e)

============ RESTART: F:\PyWorkspace\Python100\100examples\007.py ============
a= [1, 2, 3, 4, ['a', 'b', 'c'], 5]
b= [1, 2, 3, 4, ['a', 'b', 'c'], 5]
c= [1, 2, 3, 4, ['a', 'b', 'c']]
d= [1, 2, 3, 4, ['a', 'b', 'c']]
e= [1, 2, 3, 4, ['a', 'b']]

实例008:九九乘法表

题目: 输出 9*9 乘法口诀表。

程序分析: 分行与列考虑,共9行9列,i控制行,j控制列。

for i in range(1,10):
    for j in range(1,i+1):
        print('%d*%d=%2ld '%(i,j,i*j),end='')
    print()

实例009:暂停一秒输出

题目: 暂停一秒输出。

程序分析: 使用 time 模块的 sleep() 函数。

import time
for i in range(4):
    print(str(int(time.time()))[-2:])
    time.sleep(1)

实例010:给人看的时间

题目: 暂停一秒输出,并格式化当前时间。

程序分析: 同009.

import time

for i in range(4):
    print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())))
    time.sleep(1)

篇幅有限,就不一一展开了,以上资料我已经整理好了!

以下是我整理的一些提升程序员自身能力的资料,都已经整理并打包好了。

Python入门全套学习资料附带源码:

Python全套学习路线
在这里插入图片描述

Python零基础入门视频

在这里插入图片描述

Python项目源码

在这里插入图片描述

Python入门到进阶电子书籍和实战案例

在这里插入图片描述

👉100道Python练习题👈

检查学习结果。

👉面试刷题👈

在这里插入图片描述

资料领取

这份完整版的Python全套学习资料已为大家备好,朋友们如果需要可以微信扫描下方二维码添加,输入"领取资料" 可免费领取全套资料有什么需要协作的还可以随时联系我朋友圈也会不定时的更新最前言python知识。↓↓↓
或者

点此链接】领取

好文推荐

了解python的前景:https://blog.csdn.net/weixin_49895216/article/details/127186741

了解python的兼职:https://blog.csdn.net/weixin_49895216/article/details/127124870

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Python基础100练习题是入门Python编程语言的一种有效方法。这些练习题包括各种不同方面的试题,包括数据类型、控制流、函数、循环结构、列表和字符串等。这些练习题适合初学者和有经验的程序员,可帮助提高你的Python编程技能。 在练习这些试题时,可以通过遵循一些基本规则来帮助你进步。首先,应建立良好的编码习惯,例如遵守PEP 8规范(Python编码规范)。其次,应该尝试编写清晰、易于理解的代码,这能提高计算机程序可读性和维护性。第三,应该关注代码的整洁度,尽可能避免不必要的重复或冗余。 对于初学者来说,Python基础100练习题还是非常有用的,因为这样可以帮助他们掌握在Python编程过程中最常见的任务和问题,使他们更加熟练掌握编程的基本技能。对于有经验的程序员来说,这些练习题还可以帮助他们深入了解一些高级技术和异常处理方法等。练习这些试题也是一种很好的建立自己的代码库的方法,它可以让你随时拿出你先前编写过了的代码,并继续优化和改进它。 总之,Python基础100练习题可以帮助初学者或有经验的程序员提高Python编程技能和实践。这些试题是Python编程任务的好例子,能够帮助你更好地理解Python编程语言,并提升你的编程技巧。 ### 回答2: Python基础100练习题包括了Python语法的一些基础知识,例如变量、数据类型、条件语句、循环语句、函数等。它们是初学者学习Python编程的入门知识。 这些练习题涉及的内容非常广泛,对于初学者来说非常有趣且有挑战性。通过练习这些题目,可以加深对Python语法的理解,熟悉Python编程环境 和常用的编程工具,如代码编辑器、交互式解释器、调试工具等。 在Python基础100练习题中,有很多实用的练习题,例如带参数的函数、列表和字典的操作、字符串的处理、文件的读写等。这些练习题的目的是为了让初学者掌握最重要的Python编程技能,从而能够开始编写一些实用的脚本和程序。 当你完成这些练习题时,你也会学习到一些Python编程的最佳实践,例如如何编写可维护的软件、如何处理异常、如何进行单元测试等。这些都是在Python编程中非常重要的技能。 总之,Python基础100练习题非常有价值,可以帮助初学者掌握Python编程的基础知识和技能。如果你想成为一名Python开发人员,那么这些练习题就是一个重要的开始。 ### 回答3: Python基础100练习题包括了许多涵盖Python基础知识的练习题,对于初学者来说是一个很好的入门练习。在这些练习题中,我们需要了解Python的基本语法,例如变量、条件语句、循环语句、函数、列表等。 在解决Python基础100练习题时,我们需要仔细阅读题目描述,理解题目的要求。有些问题需要我们使用简单的数学计算,有些问题需要我们使用条件语句来实现,有些问题需要我们使用循环语句来完成。在解决问题时,我们可以利用Python自带的函数及库,例如random、math等。 总之,在练习中,我们需要不断提高自己的思考能力和编程技巧,通过解决问题来提高自己的编程水平,掌握基础的编程知识,让我们的程序写的更加优雅、高效。同时,我们也能够在这个过程中感受到编程的乐趣,为我们日后的学习和工作打下良好的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值