Python课后习题
Python课后习题
给定一个数字,判断是单数还是双数 a = int(input("请输入一个整数")) if a%2 == 0 : print("双数") elif a%2 != 0: print("单数") else: print("输入有误") 给定一个数字,判断是否能被3整除 a = float(input("请输入一个数字")) if a % 3 == 0: print("true") else : print("false") 给定一个数字,判断是不是三位数 a = int(input("请输入一个数字")) if a>99 and a<1000 : print("true") else : print("false") 给定一个数字,判断其个位数是否为7 a = float(input("请输入一个数字")) if a%10 == 7: print("true") else : print("false") 给定一个数字,根据上面函数,计算Y的值 x = float(input("请输入一个数")) y=0 if x<2: y=x elif x<6 and x>=2: y = x**2+1 elif x<10 and x>=6: y = -x elif x>=10: y = -x**2-1 print(y) 循环结构 # 1.将"上课了,关手机啦"输出100遍 for a in range(1,101): print(a) # 2.使用while循环输出1 - 100之间的所有数字 i=0 while i<100: i+=1 print(i) # 3.使用while循环输出1 - 100之间不能被3整除的数字 i=0 while i<100: i+=1 if i%3 != 0: print(i) # 4.使用while循环输出1 - 100之间所有能被3整除的数字 i=0 while i<100: i+=1 if i%3 == 0: print(i) # 5.输出1 - 100内的所有奇数 for i in range(1,101): if i%2 != 0: print(i) # 6.求1 - 2 + 3 - 4 + 5...99的所有数的和 sum=0 for i in range(1,100): if i%2==1: sum+=i else: sum-=i print(sum) # 8.计算2的100次方中有多少个9 a = str(2**100) b = list(a) num = 0 for i in range(len(b)): if str(9) in b[i]: num+=1 print("2的100次方中有%s个9"% num)
 2022-3-25
Vue单文件组件
Vue单文件组件
课堂笔记.....
 2022-3-24
使用FabricJS画出简单图形
使用FabricJS画出简单图形
关于FabricJS Fabricjs是一个开源的基于canvas的web交互的js库,开源协议MIT,并有很多贡献者。 Fabric 提供了canvas 渲染的对象模型,也能对SVG进行了很好的解析和交互,并且可以当作对于其他类似需求的必不可少的工具。它基于原生方法提供了简单并且强大的对象模型.也考虑到了canvas的状态和渲染,直接让我们对对象进行操作即可。 下载FabricJS 请在任意搜索引擎或者GitHub搜索并下载FabricJS 画一个简单的图形 完整代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <script src="../fabric.js"></script> </head> <style> canvas { border: 1px rgb(0, 0, 0) solid; } </style> <body> <canvas id="c" width="800" height="800"></canvas> </body> <script> var canvas = new fabric.Canvas("c"); var rect = new fabric.Rect({ left: 100, top: 100, fill: "red", width: 100, height: 100 }) var circle = new fabric.Circle({ radius: 50, fill: "green", left: 200, top: 200, height: 200, }) var triangle = new fabric.Triangle({ width: 80, height: 100, fill: "pink", left: 300, top: 300 }) canvas.add(rect); //正方形 canvas.add(circle); //圆形 canvas.add(triangle); //三角形 </script> </html> API介绍 绘制图形 fabric.Rect({}) 方形 left:0, // 距离画布左侧的距离 top:0, // 距离画布上边的距离 fill:'oink', // 背景颜色 width:10, // 宽度 height:10 // 高度 更多属性不一一赘述 fabric.Circle({}) 圆形 同方形 fabric.Triangle({}) 三角形 同方形 fabric.Pat({M x y L x1 y1 L x2 y2 z}) 多边形 M表示起点,从坐标为x、y点起步,画到L x1、y1点 ,然后在画到L x2、y2点,最后z表示闭合改图形 fabric Image() 通过元素插入图片 fromURL() 通过URL插入图片 事件 在fabric中,提供了很多不同的事件 mouse(鼠标事件) move:按下且移动 down:按下时 up:按下抬起时 dblclick:双击时 mouseout:离开元素时 mousewheel:滚轮事件 selection created 初次选中图层 updated 图层选择变化 cleared 清空图层选中 after- render画布重绘后 object(对象) selected:被选中 deselected:取消选中 moving:移动 rotating:旋转 added:添加 removed:移除 modified:调整 set与get obj.set()通常设置属性的方式有两种,第一种是在绘制的时候添加进去。 另一种是通过set方法设置 例:obj.set({color:''}) 注意:需canvas.add(obj)刷新页面 obj.get() 有set方法自然就有get方法 例:obj.getXXX 获取相应属性的属性值 组别 fabric.Group([x,y],{}) Group属性可以将x与y两个fabric实例组合成一个组别,在页面上显示出来 序列化和反序列化 toJSON(序列化) 导出画布信息 loadFromJSON(反序列化) 将导出的信息还原成画布 注意事项 obj.renderAll()所有图层的操作之后,都需要调用这个方法刷新 obj.add()将场景加入画布中 操作案例 图层移动 // 上移图层 obj.bringForward(); // 下移图层 obj.sendBackwards(); // 使用canvas对象的moveTo方法,移至图层到指定位置 card.moveTo(obj, index); // 旋转图层 obj.rotate(angle) // 翻转图层,沿着X轴或者Y轴翻转 obj.set({ scaleX/Y: -this.selectedObj.scaleX/Y,}) // 删除图层 obj.remove()在进行相应操作后都需要canvas.renderAll()重新刷新画布,否则操作不生效 查询组件 canvas.item(index:number) 查找第index个添加到canvas的组件
 2022-3-20
蓝桥杯(web组)题解-小兔子爬楼梯
蓝桥杯(web组)题解-小兔子爬楼梯
背景介绍 小兔子想去月球上旅行,假设小兔子拥有一个 n 阶梯子,当你爬完 n 层就可以到达月球,小兔子每次可以跳 1 或者 2 个台阶,小兔子有多少种跳法可以到达月球呢? 给定 n 是一个正整数,代表梯子的阶数,当 n=2 时,小兔子有 2 种跳法到达月球;当 n=3 时,小兔子有 3 种跳法跳到月球,以此类推 实现思路提示 这里为同学提供以下两种解题思路。 递归 可以使用递归来实现,具体思路如下: 当阶梯数为 0 时,只有 0 种方法;当阶梯数为 1 时,只有 1 种方法;当阶梯数为 2 时,只有 2 种方法,所以当阶梯数 n 小于等于 2 时,可以直接返回值。 如果阶梯数大于 2,就递归。 动态规划 可以使用动态规划来实现,具体思路如下: 当阶梯数 n 为 0 时,直接返回 0。 当阶梯数 n 为 1 时,直接返回 1。 当阶梯数大于 1 时,假设有 i 阶梯子需要爬,就有 dp[i] 中方法。 3 阶以上的梯子,都满足一个规律:dp[i] = dp[i-1] + dp[i-2]。 解题思路不只这两种,同学们可以自由发挥。 考试要求 请完善 index.js 文件中的代码,页面显示结果如下: 完整代码 const climbStairs = (n) => { if (n <= 2) { return n } else if (n > 2) { return climbStairs(n - 1) + climbStairs(n - 2) } } module.exports = climbStairs;
 2022-3-12
蓝桥杯(web组)题解-购物车
蓝桥杯(web组)题解-购物车
背景介绍 购物车是商城类应用里必不可少的功能,接下来,我们将使用 vue 实现一个购物车列表。 考试要求 在代码中需要修改的部分有相关提示,请仔细阅读,然后完善 index.html 中的 js 部分代码,请求数据,并让数据正确显示到页面上,完成后效果如下:(在自己电脑上图片可能不显示) 题目分析 就是使用axios请求下数据,再用Vue渲染下页面,几行代码就能搞定! 完整代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>购物车</title> <script src="./js/vue.js"></script> <script src="./js/axios.js"></script> <link rel="stylesheet" href="./css/element-ui.css"> <link rel="stylesheet" href="./css/index.css"> </head> <body> <div class="container" id="app"> <h4>购物车</h4> <!-- 购物车列表 --> <div> <el-card class="box-card" v-for="al in carlist"> <!-- 商品图片 --> <img :url="al.img"> <div> <span> <!-- 商品名称 --> {{al.name}} </span> <div class="bottom clearfix"> <el-button type="text" class="button">+</el-button> <el-button type="text" class="button"> <!-- 商品数量 --> {{al.num}} </el-button> <el-button type="text" class="button">-</el-button> </div> </div> </el-card> </div> </div> </div> <!-- 引入组件库 --> <script src="./js/element-ui.js"></script> <script> new Vue({ el: "#app", data: { carlist: [] //购物车列表 }, created() { // 在这里使用axios 发送请求 axios.get(`carList.json`, {}).then((ret) => { this.carlist = ret.data }) }, }) </script> </body> </html>
 2022-3-12
蓝桥杯(web组)题解-给页面化个妆
蓝桥杯(web组)题解-给页面化个妆
背景介绍 各个网站都拥有登录页面,设计一个界面美观的登录页面,会给用户带来视觉上的享受。本次试题我们要完成一个登录页面的布局。 考试要求 请完善 css/style.css 样式文件,让登录页面呈现如下所示的效果: 图片描述 页面关键样式说明如下: 表单外观样式:高为 600px、宽为 450px、背景颜色为 rgba(0, 0, 0, .45)、圆角边框为 10px。 表单顶部的头像图片样式:宽和高均为 200px、圆角 50%。 表单中的二级标题样式:字体大小为 45px、字体粗细为 800。 表单中按钮样式:宽为 80px、高为 30px、边框颜色为 #041c32、背景颜色为 #2d4263、字体大小为 16px、字体颜色为 white。 表单中输入框的样式:字体大小为 20px、圆角边框为 5px、宽度为 300px。 完整代码 * { box-sizing: border-box; margin: 0; padding: 0; } body { background-image: url('../images/background-pic.jpeg'); background-size: cover; color: #fff; height: 945; width: 1920; } .nav-bar { display: flex; align-items: center; justify-content: flex-end; } .nav-bar img { height: 50px; width: 50px; border-radius: 50%; margin: 15px; } .content>img{ width: 200px; height: 200px; border-radius: 50%; margin-left: 125px; margin-top: -100px; } .content-container{ margin: 100px auto; width: 450px; height:600px; background-color: rgb(0, 0, 0 ,.45); border-radius: 10px; } .form{ text-align: center; } .form>h2{ font-size: 45px; font-weight: 800; margin-bottom: 20px; } button{ width: 80px; height: 30px; border: #041c32; background-color: #2d4263; font-size: 16px; color: white; margin: 10px; } input{ font-size: 20px; border-radius: 5px; width: 300px; margin: 10px; } .text{ text-align: center; margin: 10px; } .text>a{ text-decoration: none; color: white; }
 2022-3-10
蓝桥杯(web组)题解-新年贺卡
蓝桥杯(web组)题解-新年贺卡
背景介绍 新年马上到了,大家肯定有很多祝福的话语要对自己的亲人朋友说,下面我们一起来制作一张贺卡,让我们把想说的话都写在贺卡上。 考试要求 请仔细阅读需要完善代码部分的提示,之后完善 index.js 样式文件中的 TODO 部分,点击书写贺卡,卡片随机展示已经写好的祝福语: js代码(三行搞定) document.addEventListener('DOMContentLoaded', function () { const greetingDisplay = document.getElementById("greeting-display") const btn = document.getElementById("btn") // 点击开始书写按钮 btn.addEventListener("click", () => { show(greetingDisplay) }) }) const greetings = [ "新年快乐!", "接受我新春的祝愿,祝你平安幸福", "祝你新年快乐,洋洋得意!", "新的一年,新的开始;心的祝福,新的起点!", "新年好!祝新年心情好,身体好,一切顺心!", ] // 随机数函数 从 greetings 随机取一个值并返回 function writeGreeting() { // TODO 带补充代码 //取一个0-5的随机数 var sj = Math.floor(Math.random()*5); //返回 return greetings[sj] } /* * @param {*} greetingDisplay 要显示内容的dom元素 */ // show 将 writeGreeting 函数中返回的内容显示在 greetingDisplay 元素中 function show(greetingDisplay) { // TODO 待补充代码 //写入页面 greetingDisplay.innerHTML=writeGreeting() } module.exports = { show, writeGreeting }
 2022-3-10

Theme By Brief 鄂ICP备19010459号

站长统计 sitemap

首页

分类

友链

登录