- 博客(27)
- 收藏
- 关注
原创 Python字典--第1关:元组使用:这份菜单能修改吗?
元组与列表很相似,两者之间的差别在于,列表在初始化后其中的元素还可以进行增删改等操作,但是元组在初始化后其中的元素不能进行更改,列表在赋值时使用方括号[],而元组在赋值时使用小括号()。因为元组具有不可变的特性,所以在能用元组替代列表的地方最好都使用元组,这样代码更安全。元组看起来犹如列表,但元组使用圆括号()而不是[]来标识,而且列表的元素可以修改,但元组的元素不能修改。本关介绍元组的常见使用方法以及元组和列表的使用区别。元组中的元素是不能改变的,它也没有append(),insert()这样的方法。
2025-11-10 17:37:39
361
原创 Python函数之函数定义与调用之四则运算计算器的简单实现
的功能,没有参数,也没有使用 return,返回的值是 None。我们将函数hello的返回值赋值给变量temp,然后再打印变量temp,可以看到得到的返回值确实是None。本关任务:自定义函数calculate,实现 2 个数之间的加、减、乘、除运算,并返回结果值。上述自定义函数 plus 实现的是加法功能,其中 a 和 b 是传入的参数,c是返回的值。任何传入的参数必须放在圆括号中间,有多个参数时,参数之间用逗号分隔,参数也可以为空;首先,我们来看一下函数hello的调用,如图 1 所示。
2025-11-07 17:50:03
413
原创 Python函数之函数返回值
之前的学习类型实训中,我们简单介绍过函数返回值使用的是 return,return 是用于退出函数的,return 后可以选择性地返回一个值给调用方;我们可以将return 表达式近似的理解为print(表达式),print 中的表达式可以使用的,return 中的表达式也可以使用。可以看到输出了两行结果,第一行时运行函数时打印的值,第二行是 func1 运行后的返回值,由于 func1 没有返回值,函数默认返回了 None 值。平台将使用测试集运行你编写的程序代码,若全部的运行结果正确,则通关。
2025-10-29 14:49:49
186
原创 Python函数之变量的作用域
可能有细心的同学会发现,在函数中定义的变量,在函数外并不能直接使用,这就涉及到了变量的作用域。通常情况下,我们定义的变量是可以在代码中的任意地方使用的,但是,学习了函数的知识之后,我们知道变量分为全局变量和局部变量了。如果我们定义了一个全局变量 var1,在函数中也定义了一个局部变量 var1,如果在函数中 var1 的值发生了变化,并不会影响全局变量 var1 的值。局部变量:在某个函数中声明的,只能在该函数中调用它,如果试图在超出范围的地方调用,代码运行时可能会报错。输出格式请参考测试集中的预期输出。
2025-10-24 23:32:15
324
原创 Python循环结构之continue
全班同学的试卷为一个序列,老师在批阅一个班同学的试卷时,需要从第一个同学开始一个一个批阅,然后根据每个同学的具体答卷情况给出最后得分。while 循环和 for 循环都可以使用 continue 语句,这个语句的作用是结束本次循环,重新开始下一次循环。从执行结果可以得知,第二层循环本来要运行 3 次,但是当 y 等于 2 时跳出了本次循环,但是并没有影响第一层循环。当发生循环嵌套时,continue 只会跳过当前循环,而不会影响其他层的循环。本关任务:给定一个列表,计算列表中所有正数的和,并输出结果。
2025-10-24 16:11:03
306
原创 Python循环结构之for…else…之寻找水仙花数
从上述两段代码的运行结果可知,第一段代码并没有使用 break 语句,循环是完整的进行完了的,所以 else 语句中的代码运行了,而在第二段代码中,在 i=5 时使用了 break 结束了循环,所以 else 语句中的代码并没有执行。水仙花数是指一个 3 位的整数,它的每个位上的数字的 3 次幂之和等于它本身。针对本关任务,我们可以直接使用循环结构和分支结构语句相配合完成,不过,在这里,将介绍 for-else 语句来完成本关任务。平台将使用测试集运行你编写的程序代码,若全部的运行结果正确,则通关。
2025-07-08 17:33:38
197
原创 Python循环结构之for循环实现奇偶数统计
range 函数有三个参数:range([start,] stop[, step]),方括号内[]的内容表示可以省略,其中 start 表示有序序列开始的数,它是可以省略的,当不传 start 值时,它默认为 0,stop 表示结束的数(结束的值取不到,等价于区间的左闭右开),step 表示步长,step 参数的默认值为 1。Python 的 for 语句格式如下所示,它将依次调取序列中的元素并将其分配给变量,然后执行一遍循环体中的所有执行语句,直到整个序列中的元素取完为止。range 函数的使用。
2025-07-06 12:41:18
344
原创 Python元组应用
本关任务:给定 a、b、c 三个变量,三个变量的值都是通过 input 函数获取,且都是整型数据,请编写代码交换三个变量的值:a 的值给 b,b 的值给 c,c 的值给 a。但是元组内的可变类型的数据是可以更改的,我们可以发现元组 tup 中有一个列表类型的元素,这个列表类型的元素是可以更改的。在之前学习类型实训中,我们学习过列表以及它的性质,元组和列表相似,只不过定义的时候使用的不是[],而是(),元组中的元素和列表一样,可以是任意数据类型的数据。需要注意的是,元组中的任何元素都不可更改。
2025-06-30 22:28:02
205
原创 Python列表--第4关:列表切片:你的菜单和我的菜单
Python切片是对一个列表取其部分元素获得一个子序列的常见操作,切片操作的返回结果类型与被切片的对象一致。要创建一个已有列表的切片,通过指定切片的第一个列表元素和最后一个列表元素的索引号即可。例如,当我们去餐馆吃饭点菜时,你的菜单和我的菜单有些时候是一模一样,也有些时候是部分菜名一样。我们在前三关中学习了如何处理单个列表元素和所有列表元素,在这一关中我们还将学习如何处理部分列表元素——Python中称为切片。本关通过菜名列表的部分复制,让读者了解并掌握列表切片的基础知识。
2025-06-28 23:32:08
343
原创 Python列表--第3关:数值列表:用数字说话
在数据可视化的背景下,数字列表在Python列表中的应用十分广泛,列表十分适合存储数字集合。本关目标是让读者掌握一些处理数字列表的基本方法,主要包括数字列表的创建、对数字列表进行简单的统计运算等。我们可以利用list()函数将range()生成的系列数字直接转为列表,这时候range()函数的返回值将会作为list()函数的参数,输出为一个数字列表。人生的关键在于思想精神和心情,努力让自己的思想明澈,让自己的精神充实而有所支撑,让自己每天都有一个害达平和开朗的心情,这很重要。生成的整数要小于该上限。
2025-06-28 23:31:48
419
原创 Python列表--第2关:排序:给客人排序
例如我们想将如下的客人guests列表中的五个名字元素['zhang san','li si','wang wu','sun qi','qian ba']分别按照首字母从小到大的顺序和从大到小的顺序分别排序。本关的编程任务是补全src/step2/sortTest.py 文件中的函数部分,要求实现对输入列表source_list中的元素按照首字母从小到大的顺序进行排序,并且输出排序后的列表。一般情况下我们创建的列表中的元素可能都是无序的,但有些时候我们需要对列表元素进行排序。开始你的任务吧,祝你成功!
2025-06-28 23:31:23
326
原创 Python列表--第1关:列表增删改:客人名单的变化
其中,列表元素的添加、删除或修改等是最常见的操作。Python为列表类型提供了一系列内置操作,包括append()、insert()、pop()、remove()等函数,能够很方便的处理上述列表元素变化的情况。Python还提供了pop()方法来删除元素,该方法将从源列表删除对应元素,同时返回被删除的元素。Python提供了多种不同的方法来实现对列表中元素的删除操作,包括根据元素索引位置或者元素值删除元素的方法。Python中修改列表元素的方法为,直接将列表中要修改的元素索引指出,然后为其指定新值。
2025-06-28 23:30:43
1761
原创 数字类型的综合实践--第8关:小球落下距离和
一个球从100米高处自由落下,每次落地后反跳回原高度的一半,再落下,再反弹。本关任务:编写一个小程序,求第n次落地时,共经过多少米。成熟不是看你的年龄有多大,而是看你的肩膀能挑起多重的责任。开始你的任务吧,祝你成功!
2025-06-27 22:31:52
209
原创 数字类型的综合实践--第7关:无收益资产远期合约价值
市场上正在交易一份标的证券为一年期贴现债券、剩余期限为6个月的远期合约多头,其交割价格为970元,该债券的现价为960元。S为资产现货价格,K为远期合约的交割价格,r为无风险年利率,T为远期合约的到货时间,t是现在的时间,T-t代表远期合约距离到期时间的剩余时间,均以年为单位,无收益资产远期合约价值等于资产现货价格与交割价格现值的差额,如下图所示。输入现货价格,交割价格,利率和剩余时间(月数),输出其远期价值。无收益资产是指在远期到期前,不产生现金流的资产,如贴现债券。开始你的任务吧,祝你成功!
2025-06-26 14:20:20
130
原创 数字类型的综合实践--第6关:采用年度总和法计算固定资产折旧
某企业有一项固定资产。第一年折旧额=(1000000 - 4000)×5/(5+4+3+2+1)=332000元。第二年折旧额=(1000000 - 4000)×4/(5+4+3+2+1)=265600元。第三年折旧额=(1000000 - 4000)×3/(5+4+3+2+1)=199200元。第四年折旧额=(1000000 - 4000)×2/(5+4+3+2+1)=132800元。第五年折旧额=(1000000 - 4000)×1/(5+4+3+2+1)=66400元。
2025-06-25 13:47:42
503
原创 数字类型的综合实践--第5关:计算投资收益
一是某银行大额存单,三年期的存款年利息是 每年4%, 该客户存款到期后将利息和本金再存入。二是购买公寓出租,每月租金 1000 元,该客户每年年底将租金采取一年期定期存款的形式,年利率为 1.75% 计算30年中每三年该客户两种投资方案的投资收益。print("{:3}次{:3}次{:3}次".format(1,10,100))i从初值变化到终值(不包含到终值),每次增加步长值,对于每个i值执行一次程序块。例如,计算1到100的偶数和s2。初值默认为0,步长值默认为1。例如,计算1到100的和s1。
2025-06-24 13:01:01
311
原创 数字类型的综合实践--第4关:水仙花数
从初值到终值(不包含终值)逐一提取元素(每次增加步长值,步长值默认为1),放在循环变量中,对于所提取的每个元素执行一次循环体。要努力做一个可爱的人,不埋怨谁,不嘲笑谁,也不羡慕谁,阳光下灿烂,风雨中奔跑,做自己的梦,走自己的路。为了完成本关任务,你需要掌握:1.如何循环,2.如何获取三位数的各位数字。水仙花数是一个三位数,其百位、十位、个位的数字的立方之和为其数本身。根据提示,在右侧编辑器补充代码,显示所有的水仙花数。本关任务:编写一个程序,显示所有的水仙花数。开始你的任务吧,祝你成功!
2025-06-23 16:47:34
178
原创 数字类型的综合实践--第3关:计算四边形的周长和面积
输入四边形的四条边长和一对对角之和(角度值),计算其周长和面积。四边形四个边的长度为 a,b,c,d,一对对角之和为 m,x是周长的一半, 其面积为。根据提示,在右侧编辑器补充代码,输入四边形的四条边长和一对对角之和(角度值),计算其周长和面积。成长,是每个孩子的权力,也是他们必经的征程,或平坦、或崎岖,有悲欢,有离合。radians(x) 角度x的角度值转弧度值。degree(x) 角度x的弧度值转角度值。sin(x) 返回x的正弦函数值。tan(x) 返回x的正切函数值。开始你的任务吧,祝你成功!
2025-06-22 16:55:25
260
原创 数字类型的综合实践--第2关:计算三角形的周长和面积
根据提示,在右侧编辑器补充代码,根据输入的三角形的三条边长计算三角形的周长和面积。海伦公式是利用三角形的三条边的边长直接求三角形面积的公式。放下顾虑,剪掉烦恼,勇敢往前走吧,你会看到,一个新的自己。本关任务:编写一个计算三角形的周长和面积的小程序。三角形周长15.00三角形面积10.83。为了完成本关任务,你需要掌握:海伦公式。三角形周长12.00三角形面积6.00。注意:结果需要保留两位小数。开始你的任务吧,祝你成功!提示:平方根可以用幂运算。
2025-06-22 15:48:30
291
原创 数字类型的综合实践--第1关:计算普通年金终值
普通年金终值是指最后一次支付时的本利和,它是每次支付的复利终值之和。按复利换算到最后一期期末的终值,然后加总,就是该年金终值。根据提示,在右侧编辑器补充代码,在输入每年本金、年利率和年限后,计算并显示普通年金终值(保留两位小数)。本关任务:编写一个计算普通年金终值的小程序。在python中,九个基本的数值运算如下所示。普通年金终值是1588624.85。开始你的任务吧,祝你成功!请输入每年本金50000。
2025-06-22 14:51:24
300
原创 Numpy初体验--第5关:Numpy的拆分
预期输出: [array([[0],[3],[6]]), array([[1],[4],[7]]), array([[2],[5],[8]])]预期输出: [array([[0, 1, 2]]), array([[3, 4, 5]]), array([[6, 7, 8]])]本关的任务是,补全右侧编辑器中Begin-End区间的代码,分别实现Numpy数组的纵向拆分、横向拆分、深度拆分。本关的目标是,对Numpy数组进行拆分。函数接受一个参数,然后将数组进行拆分;深度拆分要求数组的秩大于等于3。
2025-06-21 17:57:33
307
原创 Numpy初体验--第4关:Numpy数组的堆叠
manipulationtest.py文件调用manipulation中的三个方法,平台获取manipulationtest.py的输出,然后将其与预期输出作对比,如果一致,则测试通过;使用Numpy,我们可以方便的更改数组的形状,比如使用reshape()、ravel()、flatten()、transpose()函数等。拉直,其功能与ravel()相同,但是flatten()返回的是真实的数组,需要分配新的内存空间,而ravel()仅仅是改变视图。本关的目标是,改变Numpy数组的形状。
2025-06-21 17:14:13
234
原创 Numpy初体验--第3关:Numpy数组的切片与索引
一维Numpy数组的切片操作与Python列表的切片一样。下面首先来定义数字0 1 2直到8的数组,然后通过指定下标3到7来选择数组的部分元素,这实际上就是提取数组中值为3到6的元素。cetest.py文件调用ce中的ce方法,平台获取cetest.py的输出,然后将其与预期输出作对比,如果一致,则测试通过;本关的任务是,右侧编辑器中 Begin-End 区间的代码,以实现Numpy数组的索引功能的功能。函数接受两个参数,然后返回切片找出的指定元素;本关的小目标是,从数组中选择指定的元素。
2025-06-21 16:24:46
219
原创 Numpy初体验--第2关:Numpy数组的基本运算
caltest.py文件调用cal中的方法,平台获取caltest.py的输出,然后将其与预期输出作对比,如果一致,则测试通过;本关的任务是,补全右侧编辑器中 Begin-End 区间的代码,以实现向量与标量相加和相乘的的功能。平台运行step5/caltest.py文件,并以标准输入方式提供测试输入;本关的小目标是,学会Numpy二维数组的一些基本操作。函数接受三个参数,然后进行向量与标量之间的运算;矩阵可逆的充要条件是矩阵满秩。开始你的任务吧,祝你成功!本关的测试样例参见下文;
2025-06-15 20:04:41
228
原创 Numpy初体验--第1关:Numpy创建数组
a=np.arange(5)是指将数值0 1 2 3 4赋值给a这个变量,这样我们就快速的创建了一个一维数组。这里,我们使用两个arange方法,创建了两个1x6的一维数组,然后使用numpy的array方法,将两个一维数组组合成一个2x6的二维数组。cnmdatest.py文件调用cnmda中的cnmda方法,平台获取cnmdatest.py的输出,然后将其与预期输出作对比,如果一致,则测试通过;本关的任务是,补全右侧编辑器中 Begin-End 区间的代码,以实现创建一个m*n的多维数组的功能。
2025-06-15 15:43:02
316
原创 变量常量和算术表达式
前面表示的就是变量,variable 表示的就是变量名称,1 表示的是变量的值。在程序运行过程中,变量的值一般都会发生改变,内存中会专门开辟一段空间,用来存放变量的值,而变量名将指向这个值所在的内存空间,如图所示。本关任务:计算一个由正方形和等腰三角形组成的多边形的面积,其中正方形边长 4 厘米,等腰三角形底边为正方形的一条边,其到对角顶点的高为 2.6 厘米。与变量相对的就是常量,在程序运行过程中,常量的值不会发生改变。变量是标识符的一种,而变量的命名规范也就是标识符的命名规范。
2025-06-12 19:54:39
1790
原创 Python初体验——Hello World
如上图中字符串Hello world长度为11(注意,空格也是一个字符),正向递增以最左侧字符H序号为0,向右侧依次递增,最右侧字符d序号为11-1=10;上例中,输出的模板字符串是“{}来自于{}”,其中大括号 {} 表示一个槽位置,这个括号中的内容,由字符串后面紧跟的format()方法中的参数name和country依次填充。Python 字符串也提供区间访问方式,采用[N:M]格式,表示字符串中从N到M(不包含M)的子字符串,其中,N和M为字符串的索引序号,可以混合使用正向递增序号和反向递减序号。
2025-05-22 10:52:30
1565
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅