文 | 潮汐
来源:Python 技术「ID: pythonall」
最近无论是北方还是南方都迎来了强冷空气的袭击,北风呼呼吹,我所在的城市这两天则可随处溜冰,城市道路结冰橙色预警,全省交通到处管制、小学幼儿园停课休息;上班路上的行人则是小心翼翼怕摔跤;老家韭菜坪的风景更美,给大家来带张照片感受感受:
言归正传,今天的文章来点有趣的小项目实战,希望给繁忙工作中的朋友们减减压,也给这个严冬增添几分暖色;详细项目请见后文。
用 Python 画彩虹线
用 Python turtle 画个转圈圈的彩虹线,实现思路如下:
-
# 导入 turtle 包
-
import turtle
-
# 打开画笔
-
q = turtle.Pen()
-
# 设置背景颜色
-
turtle.bgcolor(
"white")
-
sides =
7
-
-
# 设置彩虹线
-
colors =[
"red",
"orange",
"yellow",
"green",
"cyan",
"blue",
"purple"]
-
for x in
range(
360):
-
q.pencolor(colors[x % sides])
-
q.forward(x*
3 / sides+x)
-
q.left(
360 / sides+
1)
-
q.width(x * sides/
200)
实现结果如下:
用 Python 实现有趣的图片转字符游戏
实现思路如下:
-
#用 Python 实现图片转字符
-
from PIL
import Image
-
import os
-
-
#设置参数输入像素的灰度值
-
def g2s(gray):
-
pixel_str=
''
'$#%@&MNBEFRWYLIkbtj?*984532menocvzst{}[]1|()<>=+~-;:i^"'.
''
'
-
length=len(pixel_str)
-
# 字符之间的灰度区间
-
plus=255/length
-
# str_gray表示字符所代表的灰度值
-
str_gray=0
-
for i in range(length):
-
str_gray = str_gray + plus
-
if gray <=str_gray:
-
return pixel_str[i]
-
-
def img2str(img_path,save_path,num=0):
-
txt_path=os.path.join(save_path,'img.txt
')
-
f=open(txt_path,'w
')
-
f.write('
')
-
# 因为此目录有可能已有内容,所以先清空
-
f.close()
-
# a表示在文件的末尾添加
-
f=open(txt_path,'a
')
-
-
# 因为有些图片尺寸过于大,所以添加了一个修改大小的功能
-
im=Image.open(img_path)
-
if num==0:
-
pass
-
else:
-
im=im.resize( ( int(im.size[0]/num),int(im.size[1]/num) ) )
-
-
# 直接将图片转换成灰度模式
-
im=im.convert('L
')
-
for y in range(im.size[1]):
-
for x in range(im.size[0]):
-
s=g2s(im.getpixel((x,y)))
-
f.write(s)
-
f.write('\n
')
-
f.close()
-
-
if __name__=='__main__
':
-
img2str(r'test.jpg
', r'D:\\Python_test
', 4)
-
测试图片:
实现效果如下:
总结
今天的文章主要是使用 Python 实现小项目减减压,希望对大家有所帮助!
PS:公号内回复「Python」即可进入Python 新手学习交流群,一起 100 天计划!
老规矩,兄弟们还记得么,右下角的 “在看” 点一下,如果感觉文章内容不错的话,记得分享朋友圈让更多的人知道!
【代码获取方式】
识别文末二维码,回复:210111
转载:https://blog.csdn.net/weixin_48923393/article/details/112504945
查看评论