实验一 Python基础编程

news2025/4/20 3:15:33

实验一 Python基础编程

只为给原因学习编程的同学提供一个思路,让编程更简单!!!

本博主擅长整理粉丝的私信!只要你有需求就可以告诉博主!博主可以帮你解决并发表!

一、实验学时

2学时

二、实验目的

1. 掌握 Python 语言的基本语法、数据结构和控制结构;

2. 掌握函数式编程的基础知识,能够熟练运用函数的相关操作

三、实验环境

Python等

四、实验内容

1.解方程

编写程序,求解一元二次方程 x 2-10x+16=0。

参考代码:

import sympy as sp

# 定义符号变量
x = sp.Symbol('x')

# 定义方程  
eq = x ** 2 - 10 * x + 16

# 求解方程
y = sp.solve(eq, x)

# 输出结果
print(y)

2.猜食材

采用的思路就是分支结构的应用,关键是分情况。

使用 if-elif-else 语句实现一个猜食材的程序。程序将询问匿名食材 A、B、C、D 和 E 的味道及颜色,猜出该食材是柠檬(sour,yellow)、米醋(sour,colourless)、白糖 (sweet,white)、黑巧克力(bitter,black)、苦瓜(bitter,green)还是青椒(spicy,green)

参考代码:

# 定义食材列表  
foods = ['A', 'B', 'C', 'D', 'E']  
  
# 定义猜测函数  
def guess_food(food):  
    if food == 'A':  
        return 'sour, yellow'  
    elif food == 'B':  
        return 'sour, colourless'  
    elif food == 'C':  
        return 'sweet, white'  
    elif food == 'D':  
        return 'bitter, black'  
    elif food == 'E':  
        return 'bitter, green'  
    else:  
        return 'Unknown'  
  
# 猜测食材  
for food in foods:  
    guess = guess_food(food)  
    print(guess)

3. 组三位数

使用 for 语句编写程序,四个数字:1、2、3、4,求能组成多少个互不相同且无重复数
字的三位数,并输出组成的三位数。(可填在百位、十位、个位的数字都是 1、2、3、4;
组成所有的排列后再去掉不满足条件的排列)

count = 0    # 计数器,记录符合条件的三位数的个数
for i in range(1, 5):    # 百位数从 1 到 4 循环
    for j in range(1, 5):    # 十位数从 1 到 4 循环
        for k in range(1, 5):    # 个位数从 1 到 4 循环
            if (i != j) and (j != k) and (i != k):    # 如果三个数字互不相同
                count += 1   # 数量加一
                print(i*100+j*10+k)    # 输出这个符合条件的三位数
print("共有", count, "个符合条件的三位数")

4. 猴子吃桃

采用逆向思维的方式进行思考。

猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩 下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第 10 天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。(采取逆向思维的方法, 从后往前推断。

peach = 1  # 第10天早上剩下的桃子数
for i in range(9):  # 从倒数第二天向前推导
    peach = (peach + 1) * 2
print('第一天摘了', peach, '个桃子')

5.删除重复

编写程序,删除一个 list 里面的重复元素。

参考代码:

my_list = [1, 2, 3, 4, 4, 5, 1, 6, 7, 7]

# 创建一个空列表来存储不重复的元素
new_list = []

# 循环遍历原始列表中的每个元素
for element in my_list:

    # 如果该元素未出现在新列表中,将其添加到新列表中
    if element not in new_list:
        new_list.append(element)

print(new_list)

6.函数值判断

使用 def 语句和 lambda 语句分别创建一个函数,该函数的功能是判断 3 5是否与 12 2-1 相等,并输出判断结论。

compare = lambda: print("3*5 equals 12 or 3-5 equals -1") \
    if 3*5 == 12 or 3-5 == -1 else print("3*5 does not equal 12 and 3-5 does not equal -1")
compare()

7. 最值及长度

编写程序,利用元组作为函数的返回值,求序列类型中的最大值、最小值及元素个数, 并 编 写 测 试 代 码 。 假 设 测 试 数 据 分 别 为 [9,7,8,3,2,1,55,6] 、 ["apple","pear","melon","kiwi"]和"TheQuickBrownFox"。

def seq_analysis(seq):
    maximum = max(seq)
    minimum = min(seq)
    count = len(seq)
    return (maximum, minimum, count)

# 测试
data1 = [9,7,8,3,2,1,55,6]
data2 = ["apple","pear","melon","kiwi"]
data3 = "TheQuickBrownFox"

result1 = seq_analysis(data1)
result2 = seq_analysis(data2)
result3 = seq_analysis(data3)

print(result1) # 输出:(55, 1, 8)
print(result2) # 输出:('pear', 'apple', 4)
print(result3) # 输出:('u', 'B', 17)

五、概念补充

5.1sympy库

SymPy是一个符号计算的Python库,它的目标是成为一个全功能的计算机代数系统,同时保持代码简洁、易于理解和扩展。它完全由Python写成,不依赖于外部库。SymPy支持符号计算、高精度计算、模式匹配、绘图、解方程、微积分、组合数学、离散数学、几何学、概率与统计、物理学等方面的功能。

solve是用来解方程的。

5.2完整代码

 下载地址:

https://download.csdn.net/download/weixin_41957626/87779809​​​​​​​

整理不易,点个赞再走吧。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/521230.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

docker发布到dockerhub报错denied: requested access to the resource is denied

docker发布到dockerhub报错denied: requested access to the resource is denied 解决方案 修改发布的镜像的REPOSITORY为自己的账户名镜像,比如我的用户名是luobotoutou123。docker tag tomcat02:1.0 luobotoutou123/tomcat02:1 然后发布镜像 到dockerhub远程仓库…

学习杂记 2023.5.13 单词背诵

目录 鼠标上的DPI是什么? 鼠标上的DPI是什么? DPI是英文Dots Per Inch的缩写,意思是每英寸点数。在计算机中,DPI通常用于描述指针设备(例如鼠标)的精度。在鼠标上,DPI指的是鼠标移动时指针在屏…

[图神经网络]ViG(Vision GNN)网络代码实现

论文解读: [图神经网络]视觉图神经网络ViG(Vision GNN)--论文阅读https://blog.csdn.net/weixin_37878740/article/details/130124772?spm1001.2014.3001.5501代码地址: ViGhttps://github.com/huawei-noah/Efficient-AI-Backbones/tree/master/vig_p…

Hive之DDL

目录 对数据库操作: 创建数据库: 查看数据库信息: 1.查看基本信息: 2.查看详尽信息: 删除数据库: 1.简单语法: 2.复杂语法: 对表操作: 创建表: 1.普…

JVM-内存结构

✅作者简介:热爱Java后端开发的一名学习者,大家可以跟我一起讨论各种问题喔。 🍎个人主页:Hhzzy99 🍊个人信条:坚持就是胜利! 💞当前专栏:JVM 🥭本文内容&…

《程序员的底层思维》读书笔记

人是能够习惯于任何环境的生物,之前你认为自己难以克服的困难,慢慢都会适应了。 维克多弗兰克《活出生命的意义》 文章目录 人是能够习惯于任何环境的生物,之前你认为自己难以克服的困难,慢慢都会适应了。 基础思维能力逻辑思维批…

每日学术速递5.12

CV - 计算机视觉 | ML - 机器学习 | RL - 强化学习 | NLP 自然语言处理 Subjects: cs.CV 1.ImageBind: Holistic AI learning across six modalities 标题:ImageBind:跨六种模式的整体人工智能学习 作者:Mengyuan Yan Jessica Lin Mont…

支付系统设计三:渠道网关设计04-渠道数据补全

文章目录 前言一、交易信息准备1. MessageDescription内容2. 交易信息填充3. 开户机构信息填充4. 省市区域信息填充5. 银行信息填充 二、路由处理三、支付渠道数据补全1.服务端支付渠道获取2. 支付渠道通用数据补全2.1 支付渠道账户信息补全2.1 商户信息补全结束 3. 支付渠道差…

具有噪声标签的鲁棒医学图像分割的点类仿射损失校正

文章目录 Joint Class-Affinity Loss Correction for Robust Medical Image Segmentation with Noisy Labels摘要本文方法Differentiated Affinity Reasoning (DAR)Class-Affinity Loss Correction (CALC)Class-Level Loss CorrectionAffinity-Level Loss CorrectionClass-Affi…

AcWing算法提高课-1.3.4数字组合

宣传一下算法提高课整理 <— CSDN个人主页&#xff1a;更好的阅读体验 <— 本题链接&#xff08;AcWing&#xff09; 点这里 题目描述 给定 N N N 个正整数 A 1 , A 2 , … , A N A_1,A_2,…,A_N A1​,A2​,…,AN​&#xff0c;从中选出若干个数&#xff0c;使它们…

轻松搭建冒险岛服务器-冒险岛私服搭建详细教程

想要拥有一个属于自己的冒险岛世界吗&#xff1f;想要一步步学习如何架设冒险岛服务器吗&#xff1f;本文将从如何选择服务器、安装系统、配置环境、搭建数据库、部署网站、上传文件、启动服务等8个方面&#xff0c;一步步为大家详细讲解冒险岛架设教程。让你轻松打造属于自己的…

sql 性能优化基于explain调优

文章目录 Explain分析&#xff1f;问题描述解决方案 Explain分析&#xff1f; 关于Explain具体可以干什么&#xff0c;有哪些优缺点&#xff0c;本博主的文章有写到&#xff0c;这是链接地址: 点击这里查看. 下面来说下Explain在项目实战中&#xff0c;如何去进行优化。 问题…

7年老人,30岁的测试说辞就辞,“人员优化”4个字,泰裤辣...

前几天&#xff0c;一个认识了好几年在大厂做测试的程序员朋友&#xff0c;年近30了&#xff0c;在公司做了7年了&#xff0c;一直兢兢业业&#xff0c;最后还是却被大厂以“人员优化”的名义无情被辞&#xff0c;据他说&#xff0c;有一个月散伙饭都吃了好几顿…… 在很多企业…

【ChatGPT】国内免费使用ChatGPT镜像

Yan-英杰的主页 悟已往之不谏 知来者之可追 C程序员&#xff0c;2024届电子信息研究生 目录 什么是ChatGPT镜像&#xff1f; 亲测&#xff1a; 一、二狗问答(AI对话) 二、AiDuTu 三、WOChat 四、ChatGPT(个人感觉最好用) 我们可以利用ChatGPT干什么&#xff1f; 一、三分…

薪人薪事 java开发实习一面

目录 1.常用数据结构&#xff0c;区别及使用场景2.数组和链表在内存中数据的分布情况3.HashMap底层数据结构4.put操作5.JVM内存区域6.各个区域存放什么东西7.创建一个对象&#xff0c;内存怎么分配的8.堆中内存怎么划分&#xff0c;gc怎么回收9.IOC 原理10.Bean存放在哪里11.AO…

支付系统设计三:渠道网关设计05-交易持久化

文章目录 前言一、领域模型持久化服务工厂二、聚合创建工厂1. 模型创建1.1 获取域模型Class1.2 新建模型1.3 数据填充 2. 模型持久化2.1 获取域模型对应的仓储2.2 调用域模型仓储进行持久化 总结 前言 本篇将解析交易信息入库&#xff0c;即对上送的参数&#xff0c;在进行校验…

关于ASA广告归因接入方法

投放苹果ASA广告&#xff0c;提高 app 曝光率、下载量的增长&#xff0c;那么我们该如何从后台看到投放广告的效果呢&#xff1f; 我们可以借助Apple Ads归因API。那什么是归因&#xff1f;什么又是API呢&#xff1f; 归因&#xff1a;可以给用户打标签&#xff0c;然后看他在…

[GUET-CTF2019]encrypt 题解

本题是输入了一个字符串&#xff0c;进行了rc4加密&#xff0c;和魔改的base64加密 RC4算法初始化函数 RC4加密过程 魔改的base64加密 最后加密的字符串是byte_602080 我们可以将byte_602080提取出来&#xff0c;下面是提取数据的IDC脚本&#xff0c;得到了密文 #include<…

赫夫曼树和赫夫曼编码详解

目录 何为赫夫曼树&#xff1f; 赫夫曼树算法 赫夫曼编码 编程实现赫夫曼树 编程实现赫夫曼编码 编程实现WPL 总代码及分析 何为赫夫曼树&#xff1f; 树的路径长度&#xff1a;从树根到每一结点的路径长度之和 结点的带权路径长度&#xff1a;从树根到该结点的路径长度…

2023网络安全十大顶级工具

从事网络安全工作&#xff0c;手上自然离不开一些重要的网络安全工具。今天&#xff0c;分享10大网络安全工具。 一、Kali Linux Kali 是一个基于 Debian 的 Linux 发行版。它的目标就是为了简单&#xff1a;在一个实用的工具包里尽可能多的包含渗透和审计工具。Kali 实现了这…