试试用print来画出皮卡丘并且让他动起来也作为小白学习python的一个入门小项目吧
print(' へ /|')
print(' /\7 ∠_/')
print(' / │ / /')
print(' │ Z _,< / /`ヽ')
print(' │ ヽ / 〉')
print(' Y ` / /')
print(' イ● 、 ● ⊂⊃〈 /')
print(' () へ | \〈')
print(' >ー 、_ ィ │ //')
print(' / へ / ノ<| \\')
print(' ヽ_ノ (_/ │//')
print('7 |/')
print('>―r ̄ ̄`ー―_')
运行效果如下,似乎还挺有趣,然后我们可以压缩一下,不用这么一直print
a = [(' へ /|'),(' /\7 ∠_/'),(' / │ / /') ,(' │ Z _,< / /`ヽ'),(' │ ヽ / 〉') ,(' Y ` / /'),(' イ● 、 ● ⊂⊃〈 /') ,(' () へ | \〈'),(' >ー 、_ ィ │ //') ,(' / へ / ノ<| \\'),(' ヽ_ノ (_/ │//'),('7 |/') ,('>―r ̄ ̄`ー―_')]
for i in range(len(a)):
print(a[i])
让皮卡丘可以可以移动
所谓移动,就是利用视觉暂留效果,每次清除命令行的屏幕,然后重新print一只皮卡丘,但是让他位置有所移动,首先我们看看怎么清屏
import os
os.system("clear")# mac与linux系统 调用系统指令,清屏,从而形成视觉特效
#os.system("cls")#window 系统使用此 调用系统指令,清屏,从而形成视觉特效
然后需要设计一个变量让函数每次print皮卡丘的时候有一个位移变量
import os
import time
def pikaqiu(num):
os.system("clear")# mac与linux系统 调用系统指令,清屏,从而形成视觉特效
#os.system("cls")#window 系统使用此 调用系统指令,清屏,从而形成视觉特效
a = [(' へ /|'),(' /\7 ∠_/'),(' / │ / /') ,(' │ Z _,< / /`ヽ'),(' │ ヽ / 〉') ,(' Y ` / /'),(' イ● 、 ● ⊂⊃〈 /') ,(' () へ | \〈'),(' >ー 、_ ィ │ //') ,(' / へ / ノ<| \\'),(' ヽ_ノ (_/ │//'),('7 |/') ,('>―r ̄ ̄`ー―_')]
for i in range(len(a)):# 按照皮卡丘列表的长度来循环
print(num*" "+a[i])# 每个皮卡丘前面增加空白符
time.sleep(0.03)
if __name__ == '__main__':
for i in range(40):
pikaqiu(i)
给皮卡丘加点颜色
现在皮卡丘能动了,想给他点颜色瞧瞧,如何修改控制台的颜色呢?其实很简单,就是语法看着有点奇怪
# 红色字体
print('\033[1;31m')#启动红色
print('hello world!')# 在这两个print中间出现的所有字符都是红色。
print('\033[0m')#恢复默认颜色
能改的其实很多,如下
print('\033[1;32m' + 'green' + '\033[0m')# 绿色字体
print('\033[1;34m' + 'blue' + '\033[0m') # 蓝色字体
print('\033[4;33m' + 'yellow' + '\033[0m') # 黄字下划线
print('\033[1;30;41m' + 'black' + '\033[0m') # 红底黑字
print('\033[1;30;47m' + 'white' + '\033[0m')# 白底黑字
那么其实程序也就是在 调用皮卡丘函数前后修改下颜色就行。
if __name__ == '__main__':
for i in range(40):
print('\033[1;31m')#启动绿色
pikaqiu(i)
print('\033[0m')#恢复默认颜色
给皮卡丘加点特效
首先,让他可以过去再回来,然后稍微改点变量,从而不同行不同效果,结果就是文章初期的那个git了。
#coding:utf-8
import time
import os
def pikaqiu(num,j):
os.system("clear")# mac与linux系统 调用系统指令,清屏,从而形成视觉特效
#os.system("cls")#window 系统使用此 调用系统指令,清屏,从而形成视觉特效
a = [(' へ /|'),(' /\7 ∠_/'),(' / │ / /') ,(' │ Z _,< / /`ヽ'),(' │ ヽ / 〉') ,(' Y ` / /'),(' イ● 、 ● ⊂⊃〈 /') ,(' () へ | \〈'),(' >ー 、_ ィ │ //') ,(' / へ / ノ<| \\'),(' ヽ_ノ (_/ │//'),('7 |/') ,('>―r ̄ ̄`ー―_')]
#皮卡丘~~
for i in range(len(a)):# 按照皮卡丘列表的长度来循环
if j % 2 == 1:# j代表整个横向过去的次数,取余数是为了过去再回来的逻辑
print(num*" "+a[i])# 如果j= 1则 j%2 =1 就是向右走,则每个皮卡丘前面增加空白符
else:#如果j= 2则 j%2 =0 则执行下列,计算逻辑是40-空白符,则看上去是向左走
print((40-num)*" "+a[i])
time.sleep(0.03)
def pikaqiu2(num,i):
#皮卡丘2,是另外一种特效
os.system("clear")# mac与linux系统 调用系统指令,清屏,从而形成视觉特效
#os.system("cls")#window 系统使用此 调用系统指令,清屏,从而形成视觉特效
a = [(' へ /|'),(' /\7 ∠_/'),(' / │ / /') ,(' │ Z _,< / /`ヽ'),(' │ ヽ / 〉') ,(' Y ` / /'),(' イ● 、 ● ⊂⊃〈 /') ,(' () へ | \〈'),(' >ー 、_ ィ │ //') ,(' / へ / ノ<| \\'),(' ヽ_ノ (_/ │//'),('7 |/') ,('>―r ̄ ̄`ー―_')]
for i in range(len(a)):
if i % 2 == 1:# 这里上面函数传入的i被for的i替换,从而形成一行向左走,一行向右走的效果
print(num*" "+a[i])
else:
print((40-num)*" "+a[i])
time.sleep(0.03)
if __name__ == '__main__':
for i in range(10):#控制循环次数
for j in range(40):#控制动画位移
print('\033[1;3'+str(i)+'m')# 修改命令行控制台颜色
if i < 5: pikaqiu(j,i)# 前5次 一种特效
else:pikaqiu2(j,i)# 后5次 一种特效
print('\033[0m')#关闭控制台颜色