9道Python编程练习:巩固基础语法与库函数,助力初学者快速入门

您所在的位置:网站首页 编程函数公式怎么用 9道Python编程练习:巩固基础语法与库函数,助力初学者快速入门

9道Python编程练习:巩固基础语法与库函数,助力初学者快速入门

2023-06-06 09:12| 来源: 网络整理| 查看: 265

本文共包含9道Python编程题目,分别涉及整数序列求和、计算阶乘、绘制图形、字典操作、文件读取等方面。文章提供了每道题的具体代码实现,以及对其背后的实现原理进行了详细解释。

目录

1.整数序列求和:用户输入一正整数N,计算从1到N(包含1和N)相加之后的结果

2.计算1+2!+3!+...+10!的结果

3.边长为200的正方形绘制

4.边长为100的六边形绘制

5.绘制一条50像素的直线

6.绘制一个半径为50像素的完整的圆

7.ls=[2,5,7,1,6],请对列表按照升序和降序的方式进行排列,要求 使用python内置函数sort

8. 针对字典D={'张三':88,'李四':90,'王五':73,'赵六':82}写出一下操作

9.打开当前路径下“作业.txt”,分别打出文件中前30个字符和前3行内容

总结

代码集合

1.整数序列求和:用户输入一正整数N,计算从1到N(包含1和N)相加之后的结果 n = int(input("请输入一个正整数:")) # 获取用户输入 sum = 0 # 定义求和变量 for i in range(1, n+1): # 计算1到n的和,注意要包含n本身,所以这里需要n+1 sum += i print("从1到{}的和为:{}".format(n, sum)) # 输出结果

用户输入一个正整数后,程序会根据用户输入的值计算出从1到该数的所有整数相加的和,并输出结果。

2.计算1+2!+3!+...+10!的结果 # 定义一个用于计算阶乘的函数 def factorial(n): if n == 0 or n == 1: return 1 else: return n * factorial(n-1) # 计算从1到10的阶乘之和 sum = 0 for i in range(1, 11): sum += factorial(i) print("1+2!+3!+...+10!的结果为:{}".format(sum))

首先定义了一个函数factorial,用于计算输入数的阶乘。然后使用for循环从1到10依次计算每个数字的阶乘,并将它们相加得出总和。最后输出结果即可。

注意,在此题中,第一项是1,第二项是2!(即2的阶乘),因此累加器sum的初始值为0。

3.边长为200的正方形绘制 import turtle # 创建画布和画笔 canvas = turtle.Screen() pen = turtle.Turtle() # 绘制正方形 pen.fd(200) pen.left(90) pen.fd(200) pen.left(90) pen.fd(200) pen.left(90) pen.fd(200) # 关闭画布 canvas.bye()

首先导入turtle库,然后使用Screen()函数创建一个画布对象,并使用Turtle()函数创建一个画笔对象。接着,使用fd()函数和left()函数移动画笔,绘制边长为200的正方形。最后使用bye()函数关闭画布即可。

运行程序后,程序将在画布上绘制出一个边长为200的正方形。

4.边长为100的六边形绘制 import turtle # 创建画布和画笔 canvas = turtle.Screen() pen = turtle.Turtle() # 绘制六边形 for i in range(6): pen.fd(100) pen.left(60) # 关闭画布 canvas.bye()

这道题目需要使用turtle库绘制一个边长为100的六边形,与绘制正方形的代码类似,只需要修改顶点个数和顶点角度即可。

5.绘制一条50像素的直线 import turtle # 创建画布和画笔 canvas = turtle.Screen() pen = turtle.Turtle() # 绘制直线 pen.fd(50) # 关闭画布 canvas.bye()

这道题目同样需要使用turtle库绘制,只需要使用fd()函数来绘制直线即可。

6.绘制一个半径为50像素的完整的圆 import turtle # 创建画布和画笔 canvas = turtle.Screen() pen = turtle.Turtle() # 绘制圆形 pen.circle(50) # 关闭画布 canvas.bye()

这道题目同样需要使用turtle库绘制,只需要使用circle()函数来绘制圆即可

7.ls=[2,5,7,1,6],请对列表按照升序和降序的方式进行排列,要求 使用python内置函数sort ls = [2, 5, 7, 1, 6] # 升序排列 ls.sort() print("升序排列后的列表:", ls) # 降序排列 ls.sort(reverse=True) print("降序排列后的列表:", ls)

这道题目需要使用Python内置函数sort来按升序或降序对给定列表进行排序。可以使用sort()函数默认按升序排列,也可以加入参数reverse=True实现降序排列。

8. 针对字典D={'张三':88,'李四':90,'王五':73,'赵六':82}写出一下操作

(1) 向字典中添加键值对'钱七':90 (2) 修改'王五'对应值为93 (3) 删除'赵六'对应的键值对

针对字典D={'张三':88,'李四':90,'王五':73,'赵六':82},可以使用Python的字典方法来进行操作。

首先,向字典中添加键值对'钱七':90,可以使用字典的update()方法:

D = {'张三':88,'李四':90,'王五':73,'赵六':82} D.update({'钱七':90}) print(D)

输出结果为:{'张三': 88, '李四': 90, '王五': 73, '赵六': 82, '钱七': 90}

其次,修改'王五'对应值为93,可以直接通过索引方式进行:

D['王五'] = 93 print(D)

输出结果为:{'张三': 88, '李四': 90, '王五': 93, '赵六': 82, '钱七': 90}

最后,删除'赵六'对应的键值对,可以使用字典的pop()方法:

D.pop('赵六') print(D)

输出结果为:{'张三': 88, '李四': 90, '王五': 93, '钱七': 90}

9.打开当前路径下“作业.txt”,分别打出文件中前30个字符和前3行内容 with open("作业.txt", "r") as f: # 打印前30个字符 print(f.read(30)) # 重新将文件指针移到文件头部 f.seek(0) # 打印前3行内容 for i in range(3): print(f.readline().strip())

本文所用的主要包为Python自带的turtle库和内置函数sort,以及操作文件所用的open函数。turtle库是Python中的一个绘图库,可以用它在屏幕上绘制各种形状;sort是Python中的内置排序函数,可以对列表进行排序;open函数则是Python中一个文件操作函数,可以读取、写入和关闭文件等。

总体来说,本文的编程题目涉及了Python语言的基本概念和常用函数,例如循环、函数、列表、字典等,对于初学者来说是一份不错的练习材料。同时,文章提供了每道题目的具体实现代码,并对其背后的原理进行了详细讲解,有助于读者深入理解和掌握Python编程技能。

总结 整数序列求和

这题主要考察了对Python基本语法的掌握能力,如变量定义、用户输入和for循环等。需要明确理解累加器的概念,即不断将新的数字加入到之前求和的结果中。

计算1+2!+3!+...+10!的结果

这一题需要用到Python的函数编程能力,如定义自己的函数和递归调用等。需要注意遍历范围,以及阶乘公式的正确使用。

绘制边长为200的正方形

这是第一个与图形绘制有关的问题,需要使用turtle库来实现。需要了解基本的turtle库函数,如Screen(), Turtle() 和 fd()等,同时还需要掌握角度转向和画笔状态等概念。

绘制边长为100的六边形

与上一题类似,这个题目同样需要使用turtle库来绘制,只不过需要绘制一个边长为100的六边形。需要掌握循环和角度旋转的应用,用for循环来控制绘制的顶点数量,并使用left()函数旋转到下一个点的位置。

绘制一条50像素的直线

这个题目非常简单,只需使用fd()函数来绘制直线即可。需要掌握turtle库的基础函数,如Screen(), Turtle() 和 fd()等。

绘制一个半径为50像素的完整的圆

这个题目同样需要使用turtle库进行绘制,只需要使用circle()函数来绘制一个半径为50像素的圆即可。需要理解turtle中的函数细节,如绘制圆形时的角度、相对位置等。

对列表按照升序和降序的方式进行排列

这是一道关于Python列表的问题,需要使用sort()函数来进行排序。要注意sort()函数的用法和参数设置,如如何指定降序排序。

字典操作

这一题主要考察了对Python字典的操作。需要知道如何向字典中添加、修改或删除键值对,以及如何遍历字典。

文件读取

这最后一道题目涉及到了Python中文件的读取操作。需要了解Python中open()函数和with语句的使用方法,并且掌握read(), seek() 和 readline()等方法的用法。

总的来说,这9道题目涉及到了Python编程的基本应用和常见库函数的使用。通过完成这些题目,可以加深对Python编程语言的理解和掌握,提高编程能力。

代码集合 整数序列求和 num = int(input("请输入一个数字: ")) sum = 0 for i in range(1, num+1): sum += i print(f"从1到{num}的所有整数之和为:{sum}") 计算1+2!+3!+...+10!的结果 def factorial(n): if n == 1: return 1 else: return n * factorial(n-1) sum = 0 for i in range(1, 11): sum += factorial(i) print(f"1+2!+3!+...+10!的结果为:{sum}") 绘制边长为200的正方形 import turtle turtle.setup(800, 600) wdw = turtle.Screen() wdw.title("绘制正方形") t = turtle.Turtle() for _ in range(4): t.fd(200) t.left(90) wdw.mainloop() 绘制边长为100的六边形 import turtle turtle.setup(800, 600) wdw = turtle.Screen() wdw.title("绘制六边形") t = turtle.Turtle() for _ in range(6): t.fd(100) t.left(60) wdw.mainloop() 绘制一条50像素的直线 import turtle turtle.setup(800, 600) wdw = turtle.Screen() wdw.title("绘制直线") t = turtle.Turtle() t.fd(50) wdw.mainloop() 绘制一个半径为50像素的完整的圆 import turtle turtle.setup(800, 600) wdw = turtle.Screen() wdw.title("绘制圆形") t = turtle.Turtle() t.circle(50) wdw.mainloop() 对列表按照升序和降序的方式进行排列 lst = [3, 5, 2, 8, 1] # 升序排列 lst.sort() print(f"升序排列:{lst}") # 降序排列 lst.sort(reverse=True) print(f"降序排列:{lst}") 字典操作 dct = {"name": "Lucy", "age": 24, "gender": "Female"} # 添加一个键值对 dct["hometown"] = "Shanghai" print(dct) # 修改键值对 dct["age"] = 25 print(dct) # 删除键值对 del dct["gender"] print(dct) # 遍历字典 for key, value in dct.items(): print(f"{key}: {value}") 文件读取 with open("example.txt", "r") as f: # 读取整个文件内容 contents = f.read() print(contents) # 读取一行内容 line = f.readline() print(line) # 将文件指针移动到文件开头 f.seek(0) # 逐行读取文件内容并打印 for line in f: print(line.strip())


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3