Skip to content

Latest commit

 

History

History
224 lines (188 loc) · 6.86 KB

File metadata and controls

224 lines (188 loc) · 6.86 KB
Error in user YAML: (<unknown>): found a tab character that violate indentation while scanning a plain scalar at line 3 column 3
---
- oeasy Python 0172
- 这是 oeasy 系统化 Python 教程,从基础一步步讲,扎实、完整、不跳步。愿意花时间学,就能真正学会。
- 本教程同步发布在: 
	- 个人网站: `https://oeasy.org` 
	- 蓝桥云课: `https://www.lanqiao.cn/courses/3584` 
	- GitHub: `https://github.com/overmind1980/oeasy-python-tutorial` 
	- Gitee: `https://gitee.com/overmind1980/oeasypython` 
---

调试循环

回忆

  • 上次初步了解了
    • 列表元素都删除的方式
    • 还调试了 八卦的遍历方式
  • 我们还可以用循环
    • 做点什么吗???🤔

遍历索引颜色

  • 先找个图

图片描述

  • 把 这个图 存在本地
    • 然后 上传到 蓝桥云的 Code中
    • 叫做python.png
  • 然后安装aview和imagemagick
sudo apt update
sudo apt install imagemagick aview
asciiview Code/python.png

保存图片

  • s保存文件
  • 文件名为python

图片描述

  • 一路下一步
  • 存好之后观察

图片描述

  • 想在python中控制这个图片变色
  • 并遍历所有的索引色

原样输出

图片描述

  • 原样输出没有问题
  • 然后观察索引图的特点

图片描述

变色

  • color这个变量
    • 在循环中改变
    • 还是跳出循环的依据
    • 也叫做循环(loop)计数器(count)

图片描述

import time
color = 16
while color<=232:
    if color == 232:
        color=16
    print("\33[2J\33[48;5;"+str(color)+"m")
    print("""
                                aj##########a,
                               _Wf  ##########
                               jW#Ld##########
                           .aaaaaaaaaaaW###0#0  __
                         aW#WWWWWWWWWWW###0##0 =%%%%=
                        jWW#W##W#########0##0# x%3%3%;
                        WW#############0###0P'_3%%3%3%
                        ########!\___________33%33%33%
                        4######'=%%3%33333333333%3%33]
                        -###### 3%%%%%%%3%333%3%3333%`
                         -!4##W.%%%3%3%%%%%%x%%%3%%"`
                               :%3%%3%3s_a=uxx
                               :%%33%33%37` !3
                                "%3%33333%__3^
                                  -""""""""'
                                         aa
           j#P!!!0#a,            ##      ##
           jW1    -0# _a,    aa  ##aaa,  ##aaaa,     _aaaa,    _aaaaaa
           jW1    _0# "#L   _#P  ##!!!'  0#'  !#L   d#!' !NW,  j#'  !#L
           jWLaj00P!   ?#1  d0'  #0      ##    4#  j#l     #L  jW    j#
           jW1          4#,_0'   #0      0#    j#  jW1    _0P  jW    jW
           jW1           4#WP    j#Laaa  ##    jW   4#a  aJ#'  jW    jW
           -!'            #P      -!!!!  !!    -!    -!!!!'    -!    -!
                      aaaWP
                      \33[0m""")
    color = color + 1
    time.sleep(0.2)
  • 颜色有点离散
  • 想把他改得连续一些

修改代码

import time
color = 0
while color<=256:
    if color == 256:
        color = 0
    print("\33[2J\33[38;2;0;"+str(color)+";0m")
    print("""
                                aj##########a,
                               _Wf  ##########
                               jW#Ld##########
                           .aaaaaaaaaaaW###0#0  __
                         aW#WWWWWWWWWWW###0##0 =%%%%=
                        jWW#W##W#########0##0# x%3%3%;
                        WW#############0###0P'_3%%3%3%
                        ########!\___________33%33%33%
                        4######'=%%3%33333333333%3%33]
                        -###### 3%%%%%%%3%333%3%3333%`
                         -!4##W.%%%3%3%%%%%%x%%%3%%"`
                               :%3%%3%3s_a=uxx
                               :%%33%33%37` !3
                                "%3%33333%__3^
                                  -""""""""'
                                         aa
           j#P!!!0#a,            ##      ##
           jW1    -0# _a,    aa  ##aaa,  ##aaaa,     _aaaa,    _aaaaaa
           jW1    _0# "#L   _#P  ##!!!'  0#'  !#L   d#!' !NW,  j#'  !#L
           jWLaj00P!   ?#1  d0'  #0      ##    4#  j#l     #L  jW    j#
           jW1          4#,_0'   #0      0#    j#  jW1    _0P  jW    jW
           jW1           4#WP    j#Laaa  ##    jW   4#a  aJ#'  jW    jW
           -!'            #P      -!!!!  !!    -!    -!!!!'    -!    -!
                      aaaWP
                      \33[0m""")
    color = color + 1
    time.sleep(0.02)

效果

图片描述

  • 从绿色到黑色
  • 硬切的可以修改么?

修改代码

import time
color = 0
green = 0
while color<=512:
    if color<=255:
        green = color
    elif 255<color<512:
        green = 511 - color
    else:
        green = 0
        color = 0
    print("\33[2J\33[38;2;0;"+str(green)+";0m")
    print("""
                                aj##########a,
                               _Wf  ##########
                               jW#Ld##########
                           .aaaaaaaaaaaW###0#0  __
                         aW#WWWWWWWWWWW###0##0 =%%%%=
                        jWW#W##W#########0##0# x%3%3%;
                        WW#############0###0P'_3%%3%3%
                        ########!\___________33%33%33%
                        4######'=%%3%33333333333%3%33]
                        -###### 3%%%%%%%3%333%3%3333%`
                         -!4##W.%%%3%3%%%%%%x%%%3%%"`
                               :%3%%3%3s_a=uxx
                               :%%33%33%37` !3
                                "%3%33333%__3^
                                  -""""""""'
                                         aa
           j#P!!!0#a,            ##      ##
           jW1    -0# _a,    aa  ##aaa,  ##aaaa,     _aaaa,    _aaaaaa
           jW1    _0# "#L   _#P  ##!!!'  0#'  !#L   d#!' !NW,  j#'  !#L
           jWLaj00P!   ?#1  d0'  #0      ##    4#  j#l     #L  jW    j#
           jW1          4#,_0'   #0      0#    j#  jW1    _0P  jW    jW
           jW1           4#WP    j#Laaa  ##    jW   4#a  aJ#'  jW    jW
           -!'            #P      -!!!!  !!    -!    -!!!!'    -!    -!
                      aaaWP
                      \33[0m""")
    color = color + 1
    time.sleep(0.02)

效果

图片描述

  • 效果还可以
  • 拍个动图
  • 发个朋友圈
  • 犒劳一下勤奋的自己
  • 我们再来玩点别的

总结

  • 这次深入了循环
    • 渐渐改变了 python图标的颜色
  • 可以找一个你自己的图标
    • 然后也改改颜色吗?
  • 什么时候开始有循环这种流程的呢?🤔
  • 下次再说 👋

  • 本文来自 oeasy Python 系统教程。
  • 想完整、扎实学 Python,
  • 搜索 oeasy 即可。