2015微信网站开发夜蝶直播app
2026/4/6 13:22:22 网站建设 项目流程
2015微信网站开发,夜蝶直播app,wordpress项目展示设置,成都代理注册公司电话实验二 Python 控制结构与文件操作一、实验基本原理运用 Anaconda 搭建的 Jupyter notebook 平台编写 Python 实例程序。二、实验目的1、理解 Python 的流程控制、文件操作的基本原理。2、通过实际案例编程#xff0c;掌握 Python 的流程控制、文件的基本操作。三、具体要求1、…实验二Python控制结构与文件操作一、实验基本原理运用Anaconda搭建的Jupyternotebook平台编写Python实例程序。二、实验目的1、理解Python的流程控制、文件操作的基本原理。2、通过实际案例编程掌握Python的流程控制、文件的基本操作。三、具体要求1、Python的流程控制顺序结构、选择结构、循环结构。2、Python流程语句if语句、for语句、while语句、break、continue等。3、if、for、while等语句相互之间的嵌套程序开发等。4、Python的文件操作、异常处理。四、实验环境1、Windows10电脑一台。2、Anaconda、Python、Jupyternotebook平台。五、实验内容实例1计算三角形面积。用Python编程实现接收用户从键盘输入的三角形的三边长判断任意两边之和能否大于第三边如果大于则计算三角形的面积先计算半周长同实验一并输出否则显示“你所输入的三边长不能构成三角形”。运行程序一次可以计算多个三角形的面积。要求1计算三角形面积在一个自定义函数fun(a,b,c)中完成该函数名可以改成其它名字。该函数返回面积值。2主调程序中完成功能三边长数值的输入不能是负数、判断能否构成三角形和面积值的输出。3形参a、b、c接收主调程序传递过来的实参三边的值要求使用关键字参数传递。#实例 1计算三角形面积 import math # 定义计算三角形面积的函数 def fun(a, b, c): # 计算半周长 p (a b c) / 2 # 计算面积海伦公式 area math.sqrt(p * (p - a) * (p - b) * (p - c)) return area # 主程序 def main(): # 输入三边长并进行有效性检查 while True: try: a float(input(请输入第一边的长度)) b float(input(请输入第二边的长度)) c float(input(请输入第三边的长度)) # 判断是否为负数或零 if a 0 or b 0 or c 0: print(边长必须是正数请重新输入) continue # 如果输入无效继续要求输入 else: break # 三边有效跳出循环 except ValueError: print(输入无效请输入数字) # 判断是否能构成三角形并计算面积 if a b c and a c b and b c a: # 三角形不等式 area fun(a, b, c) print(f三角形的面积是{area:.2f}) else: print(无法构成三角形) # 调用主程序 main()实例2随机点名。线上上课时随机点名。以班级人数n为上限随机生成m个整数大于0小于班级人数1作为学号要求这m个学生在30秒内在QQ群或腾讯课堂讨论区回复1过30秒后未回复1按旷课处理。提示本题只需产生m个互不相同的随机整数并输出即可。#实例 2随机点名 import random # 主程序 def main(): # 输入班级人数和需要点名的人数 n int(input(请输入班级人数)) m int(input(请输入点名人数)) # 判断输入是否合法 if m n: print(点名人数不能大于班级人数) return # 生成随机学生编号 students random.sample(range(1, n 1), m) # 输出随机生成的学生编号 print(随机点名结果) print( .join(map(str, students))) # 调用主程序 main()实例3奖金发放。某企业发放的奖金是根据员工给企业创造的利润提成计算的其规则如下所示。利润(1)低于或等于10万元时奖金可提10%(2)利润高于10万元低于20万元时低于10万元的部分按10%提成高于10万元的部分可提成7.5%以下皆按照阶梯计算提成。(3)低于20万元时如上20万到40万之间时高于20万元的部分可提成5%(4)低于40万元时如上40万到60万之间时高于40万元的部分可提成3%(5)低于60万元时如上60万到100万之间时高于60万元的部分可提成1.5%(6)低于100万元时如上高于100万元时超过100万元的部分按1%提成。要求从键盘输入某员工为企业创造的利润值输入他应获得的奖金。交实验报告时要求输入为123万的输出结果。#实例 3奖金发放 def calculate_bonus(profit): if profit 10: # 利润≤10万提10% return profit * 0.1 elif profit 20: # 10万利润≤20万前10万提10%超出部分提7.5% return 10 * 0.1 (profit - 10) * 0.075 elif profit 40: # 20万利润≤40万前10万10% 中间10万7.5% 超出20万部分5% return 10 * 0.1 10 * 0.075 (profit - 20) * 0.05 elif profit 60: # 40万利润≤60万前40万按上式 超出40万部分3% return 10 * 0.1 10 * 0.075 20 * 0.05 (profit - 40) * 0.03 elif profit 100: # 60万利润≤100万前60万按上式 超出60万部分1.5% return 10 * 0.1 10 * 0.075 20 * 0.05 20 * 0.03 (profit - 60) * 0.015 else: # 利润100万前100万按上式 超出100万部分1% return 10 * 0.1 10 * 0.075 20 * 0.05 20 * 0.03 40 * 0.015 (profit - 100) * 0.01 def main(): profit float(input(请输入利润万元)) bonus calculate_bonus(profit) print(f应得奖金为{bonus:.2f} 万元) main()实例4逢七拍手游戏。要求按水平方向行顺序输出100以内的所有数字含7或能被7整除的数显示“*”表示拍手。输出例如#实例 4逢七拍手游戏 # 打印 1 到 100 之间的所有数字 def game(): for i in range(1, 101): # 判断数字是否包含7或能被7整除 if 7 in str(i) or i % 7 0: print(*, end ) else: print(i, end ) # 调用函数开始游戏 game()实例5猜数字大小游戏。猜数游戏是一个益智类小游戏通常由两人参与一个人你所编写的程序出数字另一个人玩家就是你猜数字当猜数字的人说出一个数字时由出数字的人告知是否猜中知道猜中游戏结束。import random # 定义猜数字游戏 def guess_game(): # 生成目标数字1 到 100 之间 target random.randint(1, 100) # 游戏提示 print(欢迎来到猜数字游戏!) print(游戏开始猜一个1到100之间的数字。) # 初始化猜测次数 attempts 0 max_attempts 5 # 最多猜 5 次 # 游戏主循环 while attempts max_attempts: # 获取玩家的猜测 guess int(input(f请输入一个数字)) # 增加猜测次数 attempts 1 # 判断猜测结果 if guess target: print(您输入的数字小了) elif guess target: print(您输入的数字大了) else: print(f恭喜您猜对了答案是 {target}。) print(f游戏结束您总共猜了 {attempts} 次。) break # 猜对了结束游戏 else: # 超过 5 次后游戏结束 print(f很遗憾5次机会已用尽游戏结束答案为 {target}。) # 调用游戏函数 guess_game()实例6将学生名单存入Excel文件中。将模块student_XYY.py见附件中的字典dict_stu中的学生名单存入Excel文档“student_XYY.xlsx”中。student_XYY.py内容如下以1班的1号为例dict_stu{1:程小青,3:石雯雯,4:苏彤,5:王欣雨,6:薄智鑫,7:陈华超,8:葛超驰,9:韩硕,11:黄昊,12:焦俊,13:黎子豪,14:李博文,15:李荣伟,16:李帅奇,18:李炜,19:李月仓,20:刘高伟,21:路迪飞,22:宋禹宏,24:田朕宇,25:王禹皓,26:吴琪琛,27:吴永帅,28:颜亨太,30:张珈玮,31:张家朋,34:张子傲,35:赵瑞,36:赵永旺,37:赵振,38:朱苏宁,39:朱唐喜,40:庄廷泽,41:邹超磊}存入Excel文档“student_101.xlsx”后格式如下提示fromstudent_101import*#导入student_101.py文件。使用openpyxl创建workbook。fromopenpyxlimportWorkbookWorkbook()#创建工作簿wb.create_sheet(titlestudent)#创建工作表#实例 6将学生名单存入 Excel 文件中 from openpyxl import Workbook # 创建一个字典包含学生的编号和姓名 dict_stu { 1: 程小青, 3: 石雯雯, 4: 苏彤, 5: 王欣雨, 6: 薄智鑫, 7: 陈华超, 8: 葛超驰, 9: 韩硕, 11: 黄昊, 12: 焦俊, 13: 黎子豪, 14: 李博文, 15: 李荣伟, 16: 李帅奇, 18: 李炜, 19: 李月仓, 20: 刘高伟, 21: 路迪飞, 22: 宋禹宏, 24: 田朕宇, 25: 王禹皓, 26: 吴琪琛, 27: 吴永帅, 28: 颜亨太, 30: 张珈玮, 31: 张家朋, 34: 张子傲, 35: 赵瑞, 36: 赵永旺, 37: 赵振, 38: 朱苏宁, 39: 朱唐喜, 40: 庄廷泽, 41: 邹超磊 } # 创建Excel工作簿 wb Workbook() # 创建工作表并命名 ws wb.active ws.title 学生名单 # 添加表头 ws.append([学号, 姓名]) # 将字典中的数据写入Excel for student_id, student_name in dict_stu.items(): ws.append([student_id, student_name]) # 保存文件到指定路径 file_path rE:\人工智能与大数据\实验\student_553.xlsx wb.save(file_path) print(f数据已成功保存到: {file_path})六思考题思考题1随机点名。要求对上题生成的学生学号及姓名数据集文件“student_XYY.xlsx”中的学生进行随机抽取点名抽取到的同学的学号和姓名显示输出提示被点到名字的同学在QQ群回复1。然后开始正向计时30秒用sleep()函数完成以进度条的形式显示。计时结束后显示点名结束。进度条等自己设计合理即可。提示1导入文件内容fromopenpyxlimportload_workbookload_workbook(“student_101.xlsx”)#打开已有的excel文件2随机抽取点名人数和列表fromrandomimport*fromtimeimport*fromsysimport*输出格式例如3倒计时显示例如#思考题 1随机点名 import random import time from openpyxl import load_workbook import sys # 导入Excel文件 file_path rE:\人工智能与大数据\实验\student_553.xlsx wb load_workbook(file_path) ws wb.active # 获取学生名单和学号 students [] for row in ws.iter_rows(min_row2, max_row42, min_col1, max_col2): students.append((row[0].value, row[1].value)) # 存储学号和姓名的元组 # 输入点名人数 num_to_call int(input(请输入需要点名的人数不大于34不小于1)) # 确保输入的点名人数不超过学生总数 if num_to_call len(students): print(点名人数不能超过学生总数) else: # 打印提示信息 print(点名人数为, num_to_call) # 随机抽取并显示学生 selected_students random.sample(students, num_to_call) # 随机抽取指定人数的学生 print(f抽取的 {num_to_call} 名学生) for student in selected_students: student_id, student_name student print(f学号{student_id} 姓名{student_name}) print(f请上面 {num_to_call} 个同学30秒钟之内在QQ群回复1) print(- * 15 计时开始 - * 15) # 显示倒计时进度条 for i in range(30, 0, -1): time.sleep(1) sys.stdout.write(f\r[{# * (30 - i)}{ * i}] {i}s) sys.stdout.flush() print(\n - * 15 计时结束 - * 15) print(游戏结束)思考题2唐诗宋词。将一首唐诗宋词字符串写入文本文件扩展名为.txt以古诗为例诗名为第一行古诗作者为第二行第三行及以后一行一句诗句要求每行内容居中。然后再从文件整体读取出来并输出最后再输出诗的第一句诗。要求1文本文件的主文件名用自己的学号和名字假如1号张三则文件名为01-张三-思考题2.txt。2写入上述文件中的字符串要求是一首古诗词每个同学写入的诗词都不能一样否则算作雷同0分记。3使用异常捕获与处理。4使用with语句打开和自动关闭打开的文件。5写入和读出分两段程序完成并且读出使用三种方法完成。read()函数、readlines()函数及for循环。import os # 定义数据 poem_title 鹿柴 # 诗名 poet 王维 # 诗人 poem_lines [ 空山不见人, 但闻人语响。, 返景入深林, 复照青苔上。 ] # 生成居中的诗句获取最长行长度用于居中对齐 max_length max(len(poem_title), len(poet), max(len(line) for line in poem_lines)) # 指定文件存放目录 file_directory rE:\人工智能与大数据\实验 file_name 53-吴涛-思考题2.txt file_path os.path.join(file_directory, file_name) # 合并路径和文件名 # 确保目录存在 if not os.path.exists(file_directory): os.makedirs(file_directory) # 将诗歌写入文件 print(f正在写入文件{file_path} ...) with open(file_path, w, encodingutf-8) as f: # 写入诗名居中 f.write(poem_title.center(max_length) \n) # 写入诗人名居中 f.write(poet.center(max_length) \n) # 写入每一行诗句居中 for line in poem_lines: f.write(line.center(max_length) \n) print(写入完成\n) # 读取文件内容 # 方法一使用 read() 函数一次性读取全部 print( 读取方法一read() ) with open(file_path, r, encodingutf-8) as f: content f.read() print(content) # 方法二使用 readlines() 函数读取为列表 print( 读取方法二readlines() ) with open(file_path, r, encodingutf-8) as f: lines f.readlines() for line in lines: # line中已经包含换行符所以print时设置end避免双重换行 print(line, end) # 方法三使用 for 循环遍历文件对象节省内存逐行读取 print(\n 读取方法三for 循环 ) with open(file_path, r, encodingutf-8) as f: for line in f: print(line, end) print() # 打印一个空行 # 输出诗的第一句 print(诗的第一句) print(poem_lines[0]) # 输出第一句诗

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询