[重学Python]Day 2 Python经典案例简单习题6个

简介: [重学Python]Day 2 Python经典案例简单习题6个

[重学Python]Day 2 Python经典案例简单习题6个

项目链接:https://github.com/jackfrued/Python-100-Days

一、寻找水仙花数

说明:水仙花数是一个三位数,该数字每位上数字的立方之和正好等于它本身,例如:$1^3 + 5^3+ 3^3=153。

for x in range(100,1000):
    low = x % 10
    mid = x // 10 % 10
    high = x // 100
    if x == low ** 3 + mid ** 3 + high ** 3:
        print(x)

二、百钱百鸡

说明:公鸡5元一只,母鸡3元一只,小鸡1元三只,用100块钱买一百只鸡,问公鸡、母鸡、小鸡各有多少只?

for x in range(0,20):
    for y in range(0,33):
        z = 100 - x - y
        if x * 5 + y * 3 + z / 3 == 100:
            print('公鸡数量: %d ,母鸡数量: %d,小鸡数量: %d'% (x , y , z))

三、CRAPS赌博游戏

说明:CRAPS又称花旗骰,是美国拉斯维加斯非常受欢迎的一种的桌上赌博游戏。该游戏使用两粒骰子,玩家通过摇两粒骰子获得点数进行游戏。简单的规则是:玩家第一次摇骰子如果摇出了7点或11点,玩家胜;玩家第一次如果摇出2点、3点或12点,庄家胜;其他点数玩家继续摇骰子,如果玩家摇出了7点,庄家胜;如果玩家摇出了第一次摇的点数,玩家胜;其他点数,玩家继续要骰子,直到分出胜负。

 from random import randint

   money = 1000
   while money > 0:
       print('你的总资产为:', money)
       needs_go_on = False
       while True:
           debt = int(input('请下注: '))
           if 0 < debt <= money:
               break
       first = randint(1, 6) + randint(1, 6)
       print('玩家摇出了%d点' % first)
       if first == 7 or first == 11:
           print('玩家胜!')
           money += debt
       elif first == 2 or first == 3 or first == 12:
           print('庄家胜!')
           money -= debt
       else:
           needs_go_on = True
       while needs_go_on:
           needs_go_on = False
           current = randint(1, 6) + randint(1, 6)
           print('玩家摇出了%d点' % current)
           if current == 7:
               print('庄家胜')
               money -= debt
           elif current == first:
               print('玩家胜')
               money += debt
           else:
               needs_go_on = True
   print('你破产了, 游戏结束!')

四、生成斐波那契数列的前20个数

说明:斐波那契数列(Fibonacci sequence),又称黄金分割数列,是意大利数学家莱昂纳多·斐波那契(Leonardoda Fibonacci)在《计算之书》中提出一个在理想假设条件下兔子成长率的问题而引入的数列,所以这个数列也被戏称为"兔子数列"。斐波那契数列的特点是数列的前两个数都是1,从第三个数开始,每个数都是它前面两个数的和,形如:1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ...。斐波那契数列在现代物理、准晶体结构、化学等领域都有直接的应用。

a = 0
b = 1
for _ in range(20):
    a, b = b, a + b
    print(a, end=' ')

五、找出10000以内的完美数

说明:完美数又称为完全数或完备数,它的所有的真因子(即除了自身以外的因子)的和(即因子函数)恰好等于它本身。例如:6(6=1+2+3)和28(28=1+2+4+7+14)就是完美数。完美数有很多神奇的特性,有兴趣的可以自行了解。

import math

for num in range(2, 10000):
    result = 0
    for factor in range(1, int(math.sqrt(num)) + 1):
        if num % factor == 0:
            result += factor
            if factor > 1 and num // factor != factor:
                result += num // factor
    if result == num:
        print(num)

六、输出100以内所有的素数

说明:素数指的是只能被1和自身整除的正整数(不包括1)

import math

for num in range(2, 100):
    is_prime = True
    for factor in range(2, int(math.sqrt(num)) + 1):
        if num % factor == 0:
            is_prime = False
            break
    if is_prime:
        print(num, end=' ')
相关文章
|
20天前
|
Python
python集合的创建案例分享
【4月更文挑战第11天】在Python中,通过大括号或`set()`函数可创建集合。示例包括:使用大括号 `{}` 创建带元素的集合,如 `{1, 2, 3, 4, 5}`;使用 `set()` 函数从列表转换为集合,例如 `set([1, 2, 3, 4, 5])`,以及创建空集合 `set()`。当元素有重复时,集合会自动去重,如 `set([1, 2, 2, 3, 4, 4, 5])`。但尝试将不可哈希元素(如列表、字典)放入集合会引发 `TypeError`。
18 1
|
23天前
|
Python
Python文件操作学习应用案例详解
【4月更文挑战第7天】Python文件操作包括打开、读取、写入和关闭文件。使用`open()`函数以指定模式(如'r'、'w'、'a'或'r+')打开文件,然后用`read()`读取全部内容,`readline()`逐行读取,`write()`写入字符串。最后,别忘了用`close()`关闭文件,确保资源释放。
18 1
|
2月前
|
JSON JavaScript 前端开发
Python中使用JsonPath:概念、使用方法与案例
Python中使用JsonPath:概念、使用方法与案例
49 0
|
4天前
|
Python
python实现股票策略回测案例
此Python代码演示了一个简单的股票策略回测,使用yfinance库获取AAPL股票2020年至2022年的数据。它计算每日收益率,并基于前一日收益率决定买卖:正则买入,负则卖出。通过模拟交易更新现金和股票余额,最终计算总收益。请注意,此示例未涵盖交易费用、滑点、风险管理等实际交易因素。
13 0
|
4天前
|
Python
python实现股票均线策略案例
此Python代码示例展示了如何运用均线策略进行股票交易模拟。它下载AAPL的股票历史数据,计算每日收益率,设置短期和长期移动平均线。当短期均线超过长期均线时,模拟买入;反之则卖出。代码遍历每一天,更新现金和股票余额,并最终计算总收益。请注意,实际交易需考虑更多因素如交易费用和风险管理。
15 2
|
7天前
|
人工智能 Python
【AI大模型应用开发】【LangChain系列】实战案例1:用LangChain写Python代码并执行来生成答案
【AI大模型应用开发】【LangChain系列】实战案例1:用LangChain写Python代码并执行来生成答案
13 0
|
12天前
|
机器学习/深度学习 人工智能 自然语言处理
总结几个GPT的超实用之处【附带Python案例】
总结几个GPT的超实用之处【附带Python案例】
|
18天前
|
机器学习/深度学习 人工智能 测试技术
「Python系列」Python简介及案例
Python 是一种高级的、动态类型的编程语言,它的设计哲学强调代码的可读性和简洁性。Python 最初由荷兰国家数学与计算机科学研究中心的吉多·范罗苏姆于1989年发明,作为一种叫做 ABC 语言的替代品。Python 的名字来源于一个叫做Monty Python的喜剧团体的爱好者。
14 0
|
23天前
|
Python
Python数据类型学习应用案例详解
Python基础数据类型包括整数(int)、浮点数(float)、字符串(str)、布尔值(bool)、列表(list)、元组(tuple)、字典(dict)和集合(set)。整数和浮点数支持算术运算,字符串是不可变的文本,布尔值用于逻辑判断。列表是可变有序集合,元组不可变。字典是键值对的无序集合,可变,而集合是唯一元素的无序集合,同样可变。示例代码展示了这些类型的基本操作。
11 1
|
23天前
|
Python
Python控制结构学习应用案例详解
Python控制结构包含条件语句、循环语句和异常处理。条件语句用if-elif-else判断数字正负;for循环示例输出1到10的整数,while循环计算1到10的和;异常处理用try-except-finally处理除零错误,打印提示信息并结束。
10 3