实验一 Python基础编程

实验一 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​​​​​​​

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

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

简单点了

谢谢大佬

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值