布尔&list与条件循环语句与trutle

て烟熏妆下的殇ゞ 提交于 2019-12-07 11:44:29
  1. 布尔值与空值

    • 布尔值:

      • 一个布尔值只有True、False两种值

    • 空值:

      • 是python里一个特殊的值,用None表示。None不能理解为0。因为0是有意义的,而None是一个特殊值。

  2. list(列表)

    • 本质:一种有序的集合

  • 创建列表

    • 格式: 列表名= [列表选项1,列表选项2,列表选项3.....列表选项n]

      • 创建了一个空列表

        • list1 = []

      • 创建带有元素的列表

        • list2 = [18,19,20,21,22, "shaoge" , "good" , True]

        • 列表中的元素数据可以是不同类型的

    • 列表元素的访问

      • 注意不要越界(下标超出了可表示的范围)

      • 取值

    • 格式

      • 列表名[下标] 下标从0开始

    • 替换

      • list2[2] = 300 将19替换成了300

    • 列表操作

    • 列表组合

      • list5 = [1,2,3]

      • list6 = [4,5,6]

        • list7 = list5+list6

      • 列表的重复

        • list8 = [1,2,3]

        • print(list8*3)

      • 判断元素是否在列表中

        • print(3 in list5)

      • 列表截取

        • list10 = [1,2,3,4,5,6,7,8,9]

        • print(list10[3:10]) 拿出下标 3 到10的元素数据

      • 二维列表

        • list11 = [ [1,2,3],[4,5,6],[7,8,9] ]

        • 取值

          • list11[1] [1] 值为5

      • 三维列表和多维列表

        • 按照二维列表依次叠加

    • 列表方法

      • list.append() 在列表中末尾添加新的元素

    • list12 = [1,2,3,4,5]

      • list12.append(6) //添加一个元素

    • list12.append([7,8,9]) //添加一个列表 ,list12就变成了二维列表

    • list.extend() 在末尾一次性追加另一个列表中的多个值

      • list13 = [1,2,3,4,5]

      • list13.extend([6,7,8]) //追加 6,7,8 但还是一维列表

    • list.insert(i,b)

      • 在下标处添加一个元素,不覆盖原数据,原数据向后顺延 ,i 为下标,b为元素

      • list14 = [1,2,3,4,5]

      • list14.insert(2,100) //结果为 1,2,100,3,4,5

    • list.pop(x)

      • x 为想要删除元素的下标 x默认为列表最后一个下标

      • 移除列表中指定下标处的元素(默认是移除最后一个元素),返回值为删除的数据

      • list15 = [1,2,3,4,5]

      • list15.pop()

    • list.remove(x)

      • 移除列表中的某个元素第一个匹配的结果

      • x为要移除的元素

      • list16 = [1,2,3,4,5]

      • list16.remove(4)

    • list.clear()

      • 清除列表中所有的数据

      • list17 = [1,2,3,4,5]

      • list17.clear()

    • list.index(x)

      • 从列表中找出某个值第一个匹配的索引值

      • x 为要查找的元素

      • list18 = [1,2,3,4,5]

      • index18 = list18.index(3)

    • len(list18) 获取列表的长度

    • max(list18) 获取列表的最大值

    • min(list18) 获取列表的最小值

    • list.count(x) 查看x元素在列表中出现的次数

    • list.reverse()

      • 倒序

      • list25 = [1,2,3,4,5]

      • list25.reverse() //结果为 5 ,4 ,3 ,2 ,1

    • list.sort()

      • 默认为升序排序,

      • list26 = [1,5,3,2,4]

      • list26.sort()

    • 拷贝(浅拷贝)

      • 浅拷贝(引用拷贝)

      • 1ist27 = [1,2,3,4,5]

      • list28 = list27;

      • list28[1] = 200 list27的第1个元素为变为200了

    • list.copy()

      • 深拷贝 内存的拷贝

      • list29 = [1,2,3,4,5]

      • list30 = list29.copy()

      • list30[1] = 200 list29的第一个元素没有改变

    • list31 = list((1,2,3,4))

      • 将元组转成列表

    • 判断列表中每个元素的个数

      • 导入 import collections

      • d = collections.Counter(list) list为列表存放的元素

      • for k in d:

        • k 是list中的每个元素

        • d[k] 是k在list中出现的次数

  1. 条件控制语句

    • if-elif-else 语句

    • 格式

      • if 表达式1:

      • 语句1

      • elif 表达式2:

      • 语句2

      • elif 表达式3:

      • 语句2

      • ......

      • elif 表达式n:

      • 语句n

      • else: # 可有可无

      • 语句e

    • 逻辑

      • 当程序执行到 if - elif - else 语句时,首先计算 "表达式1"的值,如果“表达式1”的值为真,则执行“语句1”,执行完"语句1",则跳过整个if-elif - else语句,如果"表达式1"的值为假,计算"表达式2的值"。如果“表达式2”的值为真,则执行“语句2”,执行完"语句2",则跳过整个if-elif - else语句,如果"表达式2"的值为假,计算"表达式3的值"。如此下去直到某个表达式的值为真才停止,如果没有一个真的表达式,且有else,则执行"语句e"

      • 每个elif都是对它上面所有表达式的否定

  2. 循环语句

    • 死循环

      • 表达式永远为真的循环

    • while语句加else语句

      • 格式

        • while 表达式:

        • 语句1

        • else:

        • 语句2

      • 逻辑

        • 在条件语句(表达式)为False时执行else中的“语句2”

    • for语句

      • 格式

        • for 变量名 in 集合:

        • 语句

      • 逻辑:

        • 按顺序取 “集合” 中的每个元素赋值给 “变量”,再去执行语句。如此循环往复,直到取完”集合“中的元素截止

      • 配合 range(start,end,step)函数使用 列表生成器

        • 功能: 生成数列

        • start(起始站) 默认为0

        • end(终点)

        • step(步长)默认为1

      • 同时遍历下标和元素

        • for index,m in enumerate([1,2,3,4,5]) #index,m = 下标,元素

      • break语句

        • 作用:跳出for和while 循环

        • 注意: 只能跳出距离他最近的那一层循环

      • 注意:循环语句可以有else语句,break导致循环截止,不会执行else下面的语句

      • continue语句

        • 作用:跳过当前循环中的剩余语句,然后继续下一次循环

        • 注意:跳过距离最近的循环

  3. turtle模块绘图

    • 是一个简单的绘图工具

    • 提供一个小海龟,可以把它理解为一个机器人,只能听得懂有限的命令

    • 导入 turtle库

      • import turtle

    • 绘图窗口的原点(0,0)在正中间,默认海龟的方向是右测

    • 方法分为三种

      • 运动命令

        • turtle.forward(d) 向前移动d长度

        • turtle.backward(d) 向后移动d长度

        • turtle.right(d) 向右转动45度

        • turtle.left(d) 向左转动45度

        • turtle.goto(x,y) 移动到坐标为(x,y)位置

        • turtle.speed(speed) 笔画绘制的速度[0,10]

      • 笔画控制命令

        • turtle.up() 笔画抬起,在移动的时候不会绘图

        • turtle.down() 笔画落下,移动会绘图

        • turtle.setheading(d) 改变海龟的朝向 d为多少度

        • turtle.pensize(d) 改变笔画的宽度

        • turtle.pencolor(colorstr) 笔画颜色 colorstr为字符串

        • turtle.reset() 恢复所有设置,情况窗口,重置turtle状态 回到原点(0,0)

        • turtle.clear() 清空窗口,不会重置turtle状态 不会回到原点

        • turtle.circle(r, steps=e) 绘制一个圆形,r为半径,e为次数

        • 填充

          • turtle.begin_fill() 开始填充

          • turtle.fillcolor(colorstr) 填充颜色 colorstr为字符串

          • turtle.circle(r) 将圆填充为colorstr的颜色

          • turtle.end_fill() 结束填充

      • 其他命令

        • turtle.done() 程序继续执行

        • turtle.undo() 撤销上一次动作

        • turtle.hideturtle() 隐藏海龟

        • turtle.showturtle() 显示海龟

        • turtle.screensize(x,y)

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!