Skip to content

Latest commit

 

History

History
277 lines (202 loc) · 5.22 KB

165-1134701-死循环_while_True_屏幕变色输出_彩色屏幕.sy.md

File metadata and controls

277 lines (202 loc) · 5.22 KB
show version enable_checker
step
1.0
true

调试循环

回忆

  • 上次见识到了python循环
    • 就是重复地做某些事情
    • 没完没了的死循环

图片描述

  • while True
    • 就是 死循环
    • 会没完没了地 播放下去
  • 我们可以用 死循环 做出什么神迹吗??🤔

死循环

  • 我想满屏输出随机的零或一

图片描述

  • 可以么?

尝试

from random import randint
while True:
    num = randint(0, 1)
    print(num, end="")
  • ctrl+c

    • 强行停止
  • 如果想让每个数字

    • 背景换个颜色呢?🤓

颠倒黑白

  • 7m
    • 是可以让屏幕颜色反向
    • 即白底黑字的色彩代码
from random import randint
while True:
    num = str(randint(0, 1))
    color = "7"
    print("\33[" + color + "m" + num, end="")
  • 运行结果

图片描述

  • 还原回黑底白字呢?

颠倒黑白

  • 0m
    • 是可以让屏幕颜色还原
    • 为黑底白字的色彩代码
from random import randint
while True:
    num = str(randint(0, 1))
    color = "0"
    print("\33[" + color + "m" + num, end="")
  • 屏幕回到原点

图片描述

  • 需要根据
    • 随机数字而变化颜色
      • 0 为 黑底白字
      • 1 为 白底黑字

结果

from random import randint
while True:
    num = randint(0, 1)
    if num == 0:
        color = "0m"
    else:
        color = "7m"
    print("\33[" + color + str(num), end="")
  • 不断变化的黑白
  • 不断变化的01

图片描述

  • 可以每次都反相吗?

反相

from random import randint
color = "0m"
while True:
    num = randint(0, 1)
    if (color == "0m"):
        color = "7m"
    else:
        color = "0m"
    print("\33[" + color + str(num), end="")
  • 结果
    • 每一位都会变化颜色

图片描述

  • 可以有彩色吗?

变色

图片描述

  • 遍历一下
    • 30 是黑色
    • 从 31-37 红绿黄蓝紫青灰
print("\033[30moeasy\33[0m")
print("\033[31moeasy\33[0m")
print("\033[32moeasy\33[0m")
print("\033[33moeasy\33[0m")
print("\033[34moeasy\33[0m")
print("\033[35moeasy\33[0m")
print("\033[36moeasy\33[0m")
print("\033[37moeasy\33[0m")
  • 可以依次变色吗?

依次变色

from random import randint
bg = "31"
while True:
    bg = str(int(bg) + 1)
    if bg == "38":
        bg = "30"
    print("\33[" + bg + "m0", end="")
  • 效果

图片描述

  • 可以随机变色吗?

前景随机变色

from random import randint
while True:
    num = str(randint(0, 1))
    color = str(randint(31, 37))
    print("\33[" + color + "m" + num, end="")
  • 前景随机变色
    • 是可以实现的

图片描述

  • 如果想要
    • 更换背景色呢?

背景色测试

print("\033[40moeasy\33[0m")
print("\033[41moeasy\33[0m")
print("\033[42moeasy\33[0m")
print("\033[43moeasy\33[0m")
print("\033[44moeasy\33[0m")
print("\033[45moeasy\33[0m")
print("\033[46moeasy\33[0m")
print("\033[47moeasy\33[0m")
  • 效果

图片描述

背景色周期变化

from random import randint
fg = "41"
while True:
    fg = str(int(fg) + 1)
    if fg == "48":
        fg = "40"
    print("\33[" + fg + "m0", end="")
  • 效果

图片描述

  • 背景色可以随机变化吗?

背景色

from random import randint
while True:
    num = str(randint(0, 1))
    color = str(randint(41, 47))
    print("\33[" + color + "m" + num, end="")
  • 更换背景色也可以实现

图片描述

  • 背景好像是固定是橙色
    • 我想要前景背景都换 🤪

都换颜色

from random import randint
while True:
    num = str(randint(0, 1))
    bg = str(randint(31, 37))
    fg = str(randint(41, 47))
    print("\33[" + bg + ";" + fg + "m" + num, end="")
  • 看看我们做了些什么
    • 令人目眩神迷
    • 拍下来 留作纪念

图片描述

  • 总之就是 各种控制循环体

总结

  • 这次初步了解了死循环
    • while True:
  • 可以设置
    • 各种各样的颜色
    • 让屏幕 五彩嫔纷
    • 也可以让屏幕黑白变化
  • 你还能做出什么样好玩的效果吗?
    • 录下来
    • 记录这一刻吧!
  • 能否让屏幕
    • 按照字节的方式
    • 也就是8-bit一组的方式
    • 变化颜色呢?🤔

图片描述

  • 下次再说 👋