Python课堂练习

2023-11-12

1、 用for循环来计算1+2+3…+100

  • 代码
# -*- coding: utf-8 -*-
"""
功能:用for循环来计算1+2+3...+100
作者:小小榕
日期:2021年11月11日
"""

sum = 0
for i in range(1, 101):
    sum = sum + i
print('1+2+3...+100 = {}'.format(sum))
  • 运行结果
    在这里插入图片描述

2、用for循环来计算1+3+5…+99

  • 代码
# -*- coding: utf-8 -*-
"""
功能:用for循环来计算1+3+5...+99
作者:小小榕
日期:2021年11月11日
"""

sum = 0
for i in range(1, 101,2):
    sum = sum + i
print('1 + 3 + 5 ... + 99 = {}'.format(sum))


sum = 0
for i in range(1, 101):
    if i % 2 == 1:
        sum = sum + i
    
print('1 + 3 + 5 ... + 99 = {}'.format(sum))


sum = 0
for i in range(1, 51):
    sum = sum + (2 * i - 1)
print('1 + 3 + 5 ... + 99 = {}'.format(sum))
  • 运行结果
    在这里插入图片描述

3、百钱买百鸡问题(采用三重循环)

我国古代数学家张丘建在《算经》中出了一道“百钱买百鸡”的问题,题意是这样的:5文钱可以买一只公鸡,3文钱可以买一只母鸡,1文钱可以买3只雏鸡。现在用100文钱买100只鸡,那么各有公鸡、母鸡、雏鸡多少只?请编写程序实现。

  • 代码
# -*- coding: utf-8 -*-
"""
功能:百钱买百鸡问题(采用三重循环)
作者:小小榕
日期:2021年11月11日
"""

count = 0
for cock in range(21):
    for hen in range(34):
        for chick in range(101):
            if cock + hen + chick == 100 and cock * 5 + hen * 3 + chick / 3 == 100:
                print('cock: {:2d} hen: {:2d} chick: {:2d}'.format(cock, hen, chick))
                count = count + 1
print('结论:总共有{}种购买方案。'.format(count))
  • 运行结果
    在这里插入图片描述

4、百钱买百鸡问题2(采用三重循环)

  • 代码
# -*- coding: utf-8 -*-
"""
功能:百钱买百鸡问题2(采用三重循环)
作者:小小榕
日期:2021年11月11日
"""

count = 0
for cock in range(21):
    for hen in range(34):
        chick = 100 - cock -hen
        if cock * 5 + hen * 3 + chick / 3 == 100:
            print('cock: {:2d} hen: {:2d} chick: {:2d}'.format(cock, hen, chick))
            count = count + 1
print('结论:总共有{}种购买方案。'.format(count))
  • 运行结果
    在这里插入图片描述

5、采用for算令狐大侠喝了多少酒

  • 代码
# -*- coding: utf-8 -*-
"""
功能:采用for算令狐大侠喝了多少酒
作者:小小榕
日期:2021年11月11日
"""

print('令狐大侠说他喝了若干杯酒,\
杯数满足条件:三三数之剩二,\
五五数之剩三,七七数之剩二,\
问令狐大侠究竟喝了多少杯酒?')

for cups in range(1000, 0, -1):
    if cups % 3 == 2 and cups % 5 == 3 and cups % 7 == 2:
        print('朋友,令狐大侠喝了{}杯酒!'.format(cups))
        break
  • 运行结果
    在这里插入图片描述

6、采用for循环遍历序列(sequence)

  • 代码
# -*- coding: utf-8 -*-
"""
功能:采用for循环遍历序列(sequence)
作者 :小小榕
日期:2021年11月11日
"""

# 遍历字符串
msg = '我在学习Python。'
for c in msg:
    print(c, end='\t')

print()
    

for i in range(len(msg)):
    print(msg[i], end='\t')
    
print()   

# 遍历列表
names = ['小小榕', '小小强', '李连杰', '周杰伦', '小小张']
for name in names:
    print(name, end='\t')
print()

for i in range(len(names)):
    print(names[i], end='\t')
  • 运行结果
    在这里插入图片描述

7、采用for循环遍历字典

  • 代码
# -*- coding: utf-8 -*-
"""
功能:采用for循环遍历字典
作者:小小榕
日期:2021年11月11日
"""

cities = {'001':'北京', '002':'上海', '003':'广州','004':'深圳', '005':'成都'}

for key in cities.keys():
    print(cities[key], end='\t')
print()

for value in cities.values():
    print(value, end='\t')
print()


for key in cities.keys():
    print('{}:{}'.format(key, cities[key]))
print()

for k, v in zip(cities.keys(), cities.values()):
    print('{}: {}'.format(k, v))
  • 运行结果
    在这里插入图片描述

8、采用for循环打印水仙花数

  • 代码
# -*- coding: utf-8 -*-
"""
功能:采用for循环打印水仙花数
作者:小小榕
日期:2021年11月11日
"""

count = 0
for n in range(100, 1000):
    p1 = n % 10
    p2 = n // 10 % 10
    p3 = n // 100
    if n == p1 **3 + p2 **3 + p3 **3:
        print('{} = {}^3 + {}^3 + {}^3'.format(n, p3, p2, p1))
  • 运行结果
    在这里插入图片描述

9、采用for循环打印水仙花数2

  • 代码
# -*- coding: utf-8 -*-
"""
功能:采用for循环打印水仙花数2
作者:小小榕
日期:2021年11月11日
"""

count = 0
for n in range(100, 1000):
    m = n 
    p1 = m % 10 # 个位数
    m = m // 10
    p2 = m % 10 # 十位数
    m = m // 10
    p3 = m      # 百位数
    if p3 **3 + p2 **3 + p1 **3 == n:
        print('{}^3 + {}^3 + {}^3 = {}'.format(p3, p2, p1, n))
        count = count + 1
print('总共有{}个水仙花数。'.format(count))    


  • 运行结果
    在这里插入图片描述

10、打印直角三角形

  • 代码
# -*- coding: utf-8 -*-
"""
功能:打印直角三角形
作者:小小榕
日期:2021年11月11日
"""

row = int(input('row = '))


for i in range(row):
    for j in range(i):
        print('*', end='')
    print()

for i in range(row):
    for j in range(row - i - 1):
        print('*', end='')
    print()

for i in range(row):
    for j in range(row - i - 1):
        print(' ', end='')
    
    for j in range(i):
        print('*', end='')
    print()


for i in range(row):
    for j in range(i):
        print(' ', end='')
    for j in range(row - i - 1):
        print('*', end='')
    print()
  • 运行结果
    在这里插入图片描述

11、打印字符矩形

  • 代码
# -*- coding: utf-8 -*-
"""
功能:打印字符矩形
作者:小小榕
日期:2021年11月11日
"""

row = int(input('row = '))
col = int(input('col = ')) #column

for i in range(row):
    for j in range(col):
        print('*', end=' ')
    print()
  • 运行结果
    在这里插入图片描述

12、打印字符平行四边形

  • 代码
# -*- coding: utf-8 -*-
"""
功能:打印字符平行四边形
作者:小小榕
日期:2021年11月11日
"""

row = int(input('row = '))
col = int(input('col = '))
# 右倾平行四边形
for i in range(row):
    for j in range(row - i - 1):
        print(' ', end='')
    for j in range(col):
        print('*', end='')
    print()

# 左倾平行四边形
for i in range(row):
    for j in range(i):
        print(' ', end='')
    for j in range(col):
        print('*', end='')
    print()
  • 运行结果
    在这里插入图片描述

13、九九乘法表

  • 代码
# -*- coding: utf-8 -*-
"""
功能:九九乘法表
作者:小小榕
日期:2021年11月11日
"""

for i in range(1, 10):
    for j in range(1, i + 1):
        print('{} * {} = {}'.format(i, j, i * j), end='\t')
    print()
  • 运行结果
    在这里插入图片描述

14、判断一个整数是不是素数

  • 代码
# -*- coding: utf-8 -*-
"""
功能:判断一个整数是不是素数
作者:小小榕
日期:2021年11月11日
"""

from math import sqrt


n = int(input('输入一个整数:'))

is_prinme_nimber = True
for i in range(2, int(sqrt(n) + 1)):
    if n % i == 0:
        is_prinme_nimber = False
        break

if n == 1:
    print('{}既不是素数,也不是合数。'.format(n))
elif is_prinme_nimber:
    print('{}是素数。'.format(n))
else:
    print('{}是合数。'.format(n))
  • 运行结果
    在这里插入图片描述
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python课堂练习 的相关文章

  • 获取 .wav 文件长度或持续时间

    我正在寻找一种方法来找出 python 中音频文件 wav 的持续时间 到目前为止我已经了解了 pythonwave图书馆 mutagen pymedia pymad我无法获取 wav 文件的持续时间 Pymad给了我持续时间 但它不一致
  • 使用 django-rest-framework 设置对象级权限

    尝试使用 django rest framework 最干净 最规范地管理 django guardian 对象级权限 我想将对象的读取权限 module view object 分配给在执行 POST 时发出请求的用户 我的基于阶级的观点
  • 按边距(“全部”)值列对 Pandas 数据透视表进行排序

    我试图根据 pandas 数据透视表中的行总和对最后一列 边距 aggrfunc 进行降序排序 我知道我在这里错过了一些简单的东西 但我无法弄清楚 数据框 数据透视表 WIDGETS DATE 2 1 16 2 2 16 2 3 16 Al
  • 无法在 selenium 和 requests 之间传递 cookie,以便使用后者进行抓取

    我用 python 结合 selenium 编写了一个脚本来登录网站 然后从driver to requests这样我就可以继续使用requests进行进一步的活动 I used item soup select one div class
  • 如何过滤 Pandas GroupBy 对象并获取 GroupBy 对象?

    当对 Pandas groupby 操作的结果执行过滤时 它返回一个数据帧 但假设我想执行进一步的分组计算 我必须再次调用 groupby 这似乎有点绕 有更惯用的方法吗 EDIT 为了说明我在说什么 我们无耻地从 Pandas 文档中窃取
  • 使用 Paramiko 进行 DSA 密钥转发?

    我正在使用 Paramiko 在远程服务器上执行 bash 脚本 在其中一些脚本中 存在与其他服务器的 ssh 连接 如果我只使用 bash 不使用 Python 我的 DSA 密钥将被第一个远程服务器上的 bash 脚本转发并使用 以连接
  • 类型错误:需要二进制或 unicode 字符串,得到 618.0

    I ve been trying to implement this ML Linear Model into my dataset https www tensorflow org tutorials estimator linear L
  • Python Tkinter 模块不显示输出

    我正在尝试学习 Python 并尝试使用 Python 中的 GUI 并遇到了这个 Tkinter 模块 我的代码运行 但运行时窗口没有出现 我的代码如下 from Tkinter import to create a root windo
  • 如何使用scrapy检查网站是否支持http、htts和www前缀

    我正在使用 scrapy 来检查某些网站是否工作正常 当我使用http example com https example com or http www example com 当我创建 scrapy 请求时 它工作正常 例如 在我的pa
  • 查找 Pandas DF 行中的最短日期并创建新列

    我有一个包含多个日期的表 有些日期将为 NaN 我需要找到最旧的日期 所以一行可能有 DATE MODIFIED WITHDRAWN DATE SOLD DATE STATUS DATE 等 因此 对于每一行 一个或多个字段中都会有一个日期
  • 从 Flask 运行 NPM 构建

    我有一个 React 前端 我想在与我的 python 后端 API 相同的源上提供服务 我正在尝试使用 Flask 来实现此目的 但我遇到了 Flask 找不到我的静态文件的问题 我的前端构建是用生成的npm run build in s
  • pandas 相当于 np.where

    np where具有向量化 if else 的语义 类似于 Apache Spark 的when otherwise数据帧方法 我知道我可以使用np where on pandas Series but pandas通常定义自己的 API
  • 是否需要关闭没有引用它们的文件?

    作为一个完全的编程初学者 我试图理解打开和关闭文件的基本概念 我正在做的一项练习是创建一个脚本 允许我将内容从一个文件复制到另一个文件 in file open from file indata in file read out file
  • Python bug - 或者我的愚蠢 - 扫描字符串文字时 EOL

    我看不出以下两行之间有显着差异 然而第一个解析 而后者则不解析 In 5 n Axis of Awesome In 6 n Axis of Awesome File
  • 检测是否从psycopg2游标获取?

    假设我执行以下命令 insert into hello username values me 我跑起来就像 cursor fetchall 我收到以下错误 psycopg2 ProgrammingError no results to fe
  • pandas 中数据帧中的随机/洗牌行

    我目前正在尝试找到一种方法来按行随机化数据框中的项目 我在 pandas 中按列洗牌 排列找到了这个线程 在 pandas 中对 DataFrame 进行改组 排列 https stackoverflow com questions 157
  • 如何获取pandas中groupby对象中的组数?

    我想知道有多少个独特的组需要执行计算 给定一个名为 groupby 的对象dfgroup 我们如何找到组的数量 简单 快速 Pandaic ngroups 较新版本的 groupby API pandas gt 0 23 提供了此 未记录的
  • 如何使用 python 定位和读取 Data Matrix 代码

    我正在尝试读取微管底部的数据矩阵条形码 我试过libdmtx http libdmtx sourceforge net 它有 python 绑定 当矩阵的点是方形时工作得相当好 但当矩阵的点是圆形时工作得更糟 如下所示 另一个复杂问题是在某
  • IndexError - 具有匀称形状的笛卡尔 PolygonPatch

    我曾经使用 shapely 制作一个圆圈并将其绘制在之前填充的图上 这曾经工作得很好 最近 我收到索引错误 我将代码分解为最简单的操作 但它甚至无法执行最简单的循环 import descartes import shapely geome
  • 无法安装最新版本的 Numpy (1.22.3)

    我正在尝试安装最新版本的 numpy 即 1 22 3 但看起来 pip 无法找到最后一个版本 我知道我可以从源代码本地安装它 但我想了解为什么我无法使用 pip 安装它 PS 我有最新版本的pip 22 0 4 ERROR Could n

随机推荐

  • markdown模板(个人使用)

    头部1 博客标签规定 文章目录 一 常用可以内嵌的HTML标签 一 标题 知识点 知识点 二 图片 三 字体 五 表格 六 锚链接 七 Typora中的技巧 一 常用可以内嵌的HTML标签
  • 编译原理第二版3.4答案

    3 4 节的练习 3 4 1 给出识别练习 3 3 2 中各个正则表达式所描述的语言状态转换图 解答 解答步骤 NFA gt DFA gt 最少状态的 DFA 状态转换图 a a b a NFA DFA NFA DFA a b 0 A B
  • 报错: 登录异常:Could not read JSON: Could not resolve type id ‘com.macro.mall.tiny.modules.ums.model.UmsAd

    全部报错信息 登录异常 Could not read JSON Could not resolve type id com macro mall tiny modules ums model UmsAdmin as a subtype of
  • 无法登录到你的账户,通常可以通过从你的账户注销,然后重新登录

    1 点击 系统属性 2 点击 高级系统设置 3 点击 高级 点击用户配置文件的设置 删除指定的用户账号 重启才能登录账号
  • C++ 标识符

    标识符 lt cpp language 一个标识符是一个由数字 下划线 小写和大写拉丁字母 和大多数 Unicode 字符 见下文的详细说明 组成的任意长度的序列 有效的标识符必须以一个非数字字符 拉丁语字母 下划线或 Unicode 非数
  • java 事件监听connection_java 事件监听

    事件监听实现 三要素 1 事件源 数据源 要处理的数据 2 事件 承载数据 传递信息并被监听 3 监听器 负责对数据的业务处理 该开发用例采用了Spring的事件监听 1 定义事件类型 public class MyEvent extend
  • unity——Rigidbody类 (刚体)

    unity Rigidbody类 刚体 博客分类 unity3d unity Rigidbody类 转载自 http hi baidu com quibos item 0b035e15e63041b499ce33d8 游戏对象添加Rigid
  • mybatis源码,从配置到 mappedStatement —— mapper.xml 是如何被解析的?

    个人博客导航页 点击右侧链接即可打开个人博客 大牛带你入门技术栈 Ext1 本文源码解析基于 mybatis spring boot starter 2 1 1 即 mybatis 3 5 3 版本 Ext2 本文主要是对源码的讲解 着重点
  • 学习入门 MQTT 协议原理与应用场景

    学习认识 MQTT 协议 掌握学习MQTT协议 本文章学习借鉴于太极创客团队 以表感谢 官网http www taichi maker com 文章目录 学习认识 MQTT 协议 一 MQTT是什么 1 MQTT版本 二 MQTT基本原理
  • 【计算机技术】我用两句话在电脑课上解除了老师的控制

    前言 时光荏苒 日月如梭 转眼间暑假就过完了 我又回到了校园的怀抱 不过这不重要 在语数外之余 我每周还是有两节电脑课的 但是 事情远没有我想的这样美好 就在我满怀期待的准备一展身手 啪 很快啊 美好的一节电脑课从被老师控制结束 要是放在以
  • 机器学习——sklearn转换器和预估器(估计器)

    这里写目录标题 学习目标 1 转换器 特征工程的父类 2 预估器 估计器 estimator 学习目标 目标 知道sklearn的转换器和预估器的执行流程 内容预览 转化器 预估器 估计器 sklearn机器学习算法的实现 1 转换器 特征
  • webpack打包用的cdn,速度明显加快,只要10秒不到,全部import需要近一分钟,--最终算是彻底失败-axios

  • Swin-Unet模型代码详解及改进思路

    Swim unet是针对水下图像分割任务提出的一种模型结构 其基于U Net模型并加入了Swin Transformer模块 可以有效地解决水下图像分割中的光照不均匀 噪声干扰等问题 Swim unet模型代码详解 首先 在导入必要的库后
  • 虚拟化磁盘模式、数据存储详解

    虚拟化磁盘模式 数据存储详解 1 配置模式 1 1 普通 1 2 普通延迟置零 1 3 精简 2 磁盘模式 2 1 从属 2 2 独立 持久 2 3 独立 非持久 3 数据存储 3 1 虚拟化类型数据存储 3 2 非虚拟化类型数据存储 3
  • Web和HTTP

    目录 HTTP概况 Web术语 HTTP基本 HTTP是无状态协议 HTTP连接方式 非持续连接HTTP 例子 花费时间 持续连接的HTTP 非持续的缺点 HTTP报文格式 请求报文 HTTP请求报文的通用格式 及GET POST HEAD
  • 性能测试基础

    性能测试基础知识 性能测试的定义 衡量软件的性能需要考虑的三点内容 性能测试的分类 压力测试 负载测试 容量测试 强度测试 配置测试 基准测试 并发测试 性能指标 响应时间 吞吐量 服务器资源占用 以下内容比较枯燥 但是作为基础无法绕开 就
  • Kuebernetes之DaemonSet

    DaemonSet确保集群中每个 部分 node运行一份pod副本 当node加入集群时创建pod 当node离开集群时回收pod 如果删除DaemonSet 其创建的所有pod也被删除 DaemonSet中的pod覆盖整个集群 当需要在集
  • SpringBoot项目实现增删改查

    接上一章 Java 连接MySql 原你是阳光 O 的博客 CSDN博客 实现单表增删改查 引入依赖
  • JVM调优

    1 JVM运行时数据区 2 基础 1 类加载器 2 双亲委派 2 沙箱机制 3 垃圾回收算法 1 引用计数 2 复制 3 标记清除 4 标记整理 4 GCRoot 1 虚拟机栈中的引用对象 2 方法区中的类静态属性引用的对象 3 方法区中的
  • Python课堂练习

    文章目录 1 用for循环来计算1 2 3 100 2 用for循环来计算1 3 5 99 3 百钱买百鸡问题 采用三重循环 4 百钱买百鸡问题2 采用三重循环 5 采用for算令狐大侠喝了多少酒 6 采用for循环遍历序列 sequenc