用户:郭若垚0Hv4查看:0 回复:0 评论:0 创建时间:2022-02-25T21:19:43
【作品展示】

【作品介绍】
一个小量的绘画模块(在控制台)
【作品源代码】
"""
最好用IDLE进行测试(可以输出红色),
只要指定内容、长(width)、宽(height),就可已输出了。
版权
名字:郭若垚
邮箱喵试:
>>> import pyeasydraw
>>> a = pyeasydraw.Art()
>>> a.run()
**********
**********
**********
**********
**********
**********
**********
**********
**********
**********
"""
import random # 随机
import sys # 用红色输出
__version__ = "0.0.1"
__all__ = ["Art", "new_line"]
class Art:
def __init__(self, height=10, width=10, string: (str, tuple) = "*", end: str = " ", stochastic=False, red=False, stochastic_color=False, raw_color=False):
self.height = height # 高度
self.width = width # 宽度
self.string = string # 输出内容
self.end = end # 末尾
self.stochastic = stochastic # 是否随机
self.red = red # 是否是红色
self.stochastic_color = stochastic_color # 是否随机颜色
self.raw_color = raw_color # 有规律的颜色
self.data = {
"Height": height,
"Width": width,
"String": string,
"End": end,
"Stochastic": stochastic,
"Red": red,
"Stochastic_color": stochastic_color,
"Raw_color": raw_color
} # 用来存放数据
def run(self):
"""
进行输出程序
"""
for a in range(self.height): # 从高度开始
for x in range(self.width): # 再从宽开始
if self.stochastic: # 如果是随机
g = random.choice(self.string) # 随机抽选
elif type(self.string) == tuple:
g = self.string[x % len(self.string)] # 按顺序输出
else:
g = self.string # 就选这个
if self.stochastic_color: # 如果是随机颜色
w = random.choice([0, 1]) # 随机选颜色
if w == True: # 如果是红色
sys.stderr.write(str(g)+str(self.end)) # 用错误(红色)输出
else:
print(str(g), end=str(self.end)) # 用print(蓝色)输出
elif self.red: # 如果是红色
sys.stderr.write(str(g)+str(self.end)) # 用错误(红色)输出
elif self.raw_color:
if x % 2 == 0:
print(str(g), end=str(self.end)) # 用print(蓝色)输出
else:
sys.stderr.write(str(g)+str(self.end)) # 用错误(红色)输出
else:
# 用print(蓝色)输出
print(str(g), end=str(self.end))
print("") # 换一行
def set_data(self):
"""
把参数设置为data中的参数
"""
#用data设定参数
self.height = self.data["Height"]
self.width = self.data["Width"]
self.string = self.data["String"]
self.end = self.data["End"]
self.stochastic = self.data["Stochastic"]
self.red = self.data["Red"]
self.stochastic_color = self.data["Stochastic_color"]
self.raw_color = self.data["Raw_color"]
def reset_data(self):
"""
把data设置为参数中的参数
"""
#把参数改为data
self.data["Height"] = self.height
self.data["Width"] = self.width
self.data["String"] = self.string
self.data["End"] = self.end
self.data["Stochastic"] = self.stochastic
self.data["Red"] = self.red
self.data["Stochastic_color"] = self.stochastic_color
self.data["Raw_color"] = self.raw_color
def new_line(string="*", width=20, red=False, space=True):
"""
换一行执行新的程序
"""
a = Art(red=red) # 一个art
if space:
a.end = " "
else:
a.end = ""
a.string = string # 设置字
a.width = width # 设置宽
a.height = 1 # 设置高
a.run() # 运行
def main():
r = Art(10, 10)
r.run()
#new_line()
if __name__ == "__main__":
main()
【提示】
部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:
https://python.codemao.cn