问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

用Python写过哪些的小工具

发布网友 发布时间:2022-03-25 21:37

我来回答

1个回答

热心网友 时间:2022-03-25 23:06

为了逃避学校布置的美术作业,写过一个画素描的程序。
从后再也不担心美术作业了。
也就是利用Python的PIL库来 将彩色图片转化为素描效果的图片

更新说明:
前面那个程序写的太粗糙了,不好意思拿出来分享,重新写了一遍,加上了GUI图形界面。
配置环境:
windows 10
python 3.5

image.py
from PIL import Image
import numpy as np
import os
import join
import time
def image(sta,end,depths=10):
a = np.asarray(Image.open(sta).convert('L')).astype('float')
depth = depths # (0-100)
grad = np.gradient(a) # 取图像灰度的梯度值
grad_x, grad_y = grad # 分别取横纵图像梯度值
grad_x = grad_x * depth / 100.
grad_y = grad_y * depth / 100.
A = np.sqrt(grad_x ** 2 + grad_y ** 2 + 1.)
uni_x = grad_x / A
uni_y = grad_y / A
uni_z = 1. / A
vec_el = np.pi / 2.2 # 光源的俯视角度,弧度值
vec_az = np.pi / 4. # 光源的方位角度,弧度值
dx = np.cos(vec_el) * np.cos(vec_az) # 光源对x 轴的影响
dy = np.cos(vec_el) * np.sin(vec_az) # 光源对y 轴的影响
dz = np.sin(vec_el) # 光源对z 轴的影响
b = 255 * (dx * uni_x + dy * uni_y + dz * uni_z) # 光源归一化
b = b.clip(0, 255)
im = Image.fromarray(b.astype('uint8')) # 重构图像
im.save(end)

def mains(numbers):
number = int(numbers)
startss = os.listdir(".\输入----图片")
time.sleep(2)
for starts in startss:
start = ''.join(starts)
print('正在转化--图片: ' + start)
sta = './' + '输入----图片/' + start
end = './' + '输出----图片/' + 'HD_20' + start
image(sta=sta,end=end,depths=number)

简单来说,就是利用python的Numpy库,将图像降维转化为数字化的数据,之后对数据进行操作,再利用pillow库将操作好的数据转化为素描效果的图片。
GUI图形界面程序
main.py
import os
from image import mains
from tkinter import *

def exists_mkdir():
if os.path.exists('输出----图片') and os.path.exists('输入----图片'):
pass
else:
os.mkdir('输出----图片')
os.mkdir('输入----图片')

def images():
try:
s1 = e1.get()
a = mains(s1)
c["text"] = "我们的程序运行成功了"
except Exception:
c["text"] = "程序运行出错了,可能是缺少了两个配置文件"

#创建程序运行需要的工作目录
exists_mkdir()

tk = Tk()
# 设置窗口大小和位置
tk.geometry('430x350+80+60')

# 不允许改变窗口大小
tk.resizable(False, False)

## 用来显示Label组件
tk.title('素描图生成器')
w1 = Label(tk,text='作者博客:www.liuchaoblog.live')
w = Label(tk,text='')
w2 = Label(tk,text='欢迎使用:')
w3 = Label(tk,text='步骤一:将需要转化的图片放入 输入----图片 文件夹下')
w4 = Label(tk,text='步骤二:输入 0-100的数值,数值越大,颜色越深。--------标准参数是 10 ')
w5 = Label(tk,text='步骤三:点击确认 运行程序 等待出现提示')
w6 = Label(tk,text='步骤四:到输入----图片 文件夹找到素描图')
w1.grid(row=0,column=0,sticky=W)
w.grid(row=1,column=0,sticky=W)
w2.grid(row=2,column=0,sticky=W)
w3.grid(row=3,column=0,sticky=W)
w4.grid(row=4,column=0,sticky=W)
w5.grid(row=5,column=0,sticky=W)
w6.grid(row=6,column=0,sticky=W)

l = Label(tk,text="输入 0-100的数值")
l.grid(row=8,column=0,sticky=E)

## 用来显示输入框
e1 = Entry(tk)
e1.grid(row=10,column=0,sticky=E)

## 用来显示Button
b = Button(tk,text='确定',command=images)
b.grid(row=12,column=0,sticky=E)

c = Label(tk,text="",background="yellow")
c.grid(row = 15)

# 启动消息主循环
tk.mainloop()

运行效果:

这个程序我用pyinstaller做成exe文件了。
Tkinter小应用,python写出倒计时工具

倒计时小工具挺有用的,如果你是学生的话,可以折腾学习一下这个小工具。我用的是python+Tkinter写出来的。这里面需要说一下Tkinter,Tkinter是Python的一个标准包,因此我们并不需要安装它。我们将从创建一个窗口开始,然后我们在其之上加入一些小组件,比如按钮,复选框等,并使用它们的一些属性。话不...

python Tkinter 写的一个屏幕录制小工具

设计与实现一个屏幕录制小工具,满足日常工作演示视频录制需求。功能需求聚焦于录制屏幕的特定区域,并生成视频文件。界面设计简洁,仅包含三个按钮:用于选择录制区域、启动录制以及结束录制。操作流程如下:1. 通过点击“选择录制区域”按钮,可以框选屏幕内的任意区域进行录制。2. 按下“开始录制”按钮,录...

10款超好用的Python开发工具

PyCharm是由JetBrains打造的一款Python IDE。它有两个版本,免费社区版和专业版。PyCharm简单易用,支持多种主题模式,并能与IPython notebook集成,支持Anaconda等科学计算包,以及众多第三方web开发框架。Spyder:开源的Python集成开发环境 Spyder是一个开源的Python集成开发环境,适用于科学计算方面的Python开...

用Python开发一个有趣的翻译小工具

第一个问题是找到一个好用的翻译工具。我强烈推荐DeepL,尽管它不是大厂的产品,但中英翻译效果远超谷歌和Bing,更不用说国内的一些所谓专业翻译工具了。有经验的都知道,没有经验的可以去官网体验一下。第二个问题是使用Python自动保存译文。本文主要介绍这部分内容。自动保存译文,首先要明确译文来源。排...

如何用 Python、Flet 和百度OCR 制作批量信息采集小工具——界面...

Python Flet,作为我们的首选框架,以其简洁的架构和无需复杂前端后端的优势,为快速开发出美观且跨平台的应用提供了可能。1. 设计界面雏形 首先,我们导入必要的flet模块,接着定义main函数,它是界面启动的入口点:运行这段代码后,我们得到的是一个初始的空白界面。2. 添加控件和布局 我们从添加基础...

手摸手系列之用Python制作Windows小工具及将Python封装为exe可执行程 ...

在SaaS项目开发中,为了解决业务人员的特定需求,即无需编程知识的小姐姐们能方便、安全地根据批次号删除数据,我设计了一个Python小工具,并将其封装为Windows可执行程序(exe)。Python原本需要Python环境才能运行,但通过exe封装,用户无需安装额外的环境,即可在Windows上直接使用。将Python程序打包为exe的...

python制作翻译小工具

代码的核心部分包括:定义翻译函数,使用pygtrans.Translate和quicktranslate.get_translate_youdao。设置GUI界面,接收用户输入的路径和翻译要求。遍历文件、表和单元格,将内容传入翻译函数。将所有步骤整合,形成完整的翻译程序。这个工具通过简洁的步骤,帮助用户高效地进行Excel内容的多语言翻译。

好学编程:强推10款Python常用的开发工具

在Python编程旅程中,选择合适的开发工具能极大地提升效率。以下是我们推荐的10款Python开发工具,适合不同层次和需求的开发者。1. IDLE - 内置IDEIDLE,作为Python自带的简单IDE,适合初学者入门,提供了基础的交互和编写环境。2. IPython - 交互式计算系统IPython的强大在于其交互式计算和变量补全功能,...

用Python做一个简单的翻译工具!

这个工具的使用非常简便,可以通过pip安装,并在命令行中输入单词进行翻译。如果你想体验谷歌翻译,只需在使用时加上相应的参数。这个教程展示了Python在实际问题中如何作为强大的工具来简化工作流程。你可以通过以下命令安装并使用这个翻译工具:bash pip install [项目名称] -g [项目名称] [要翻译的单词]...

Python写一个命令行工具(基于uncompile6的反编译小工具)

在处理没有源码的python包时,使用uncompile6进行反编译能提供便利。但面对大量包文件,逐一操作显得繁琐。为此,自建命令行工具以一键反编译指定目录下的pyc文件,成为更高效的解决方案。通过使用sys.argv获取命令行输入,例如"uncompile6 -o xxx.py xxx.pyc",解析参数为['uncompile6 ', '-o', '...

如何用python写小工具 用python写工具 写代码一般用什么工具写 写书法用的工具 写毛笔字用的工具都是有什么 写毛笔字用到的工具 写小说用什么工具最方便 用什么工具写代码 用什么工具写日记
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...宿管部的新生嘛,要去查宿舍,就要去查房签字嘛,有些宿舍的人就会说... 现在我住厂宿舍,宿管每天都要来查房,有时候甚至在睡觉的时候来,使 王燕小简介 宁夏医科大学基础医学院系部介绍 蜂蜜霉了可以直接涂在皮肤上吗 我买了一大瓶蜂蜜柚子茶但是放太久起霉了,很舍不得丢掉,它还有什么用... 昨天在家发现有很多蜂蜜生霉了~丢了又舍不得~可以做面膜吗?~~还有什么... 中山大学中山眼科中心预约就诊 中山大学中山眼科中心海南眼科医院基本资料 护理文职有什么岗位 win7系统怎么让图标显示缩略图 如何使电脑里的图片从显示图标变成缩略图? 【】怎么让电脑里的图片显示为【缩略图】好方便查看? 电脑中怎样才能让它始终显示缩略图啊? 电脑照片缩略图怎么显示 如何让电脑桌面和文件夹里的图片直接显示成缩略图 什么是Python,又该怎么学习Python 怎样让电脑默认的图片显示方式为缩略图? 如何自学 Python 怎样把电脑的查看方式默认为 缩略图查看方式 电脑显示缩略图? 如何清除皮床上的彩色笔 win7怎么让只图片显示缩略图 皮床怎样搞卫生 怎样才能让电脑里的图片始终显示的是缩略图? 我家的床是白色的皮的,不知道该怎么清理会更干净。更白。 皮床发霉怎么洗 电脑里的文件浏览的时候 怎么设置自动显示缩略图 皮床上面有发霉的霉菌怎么清洗 如何让电脑里的图片全部显示为缩略图? 初学者学python用什么软件 小米小爱音箱使用步骤 郁闷死了,iPhone11为什么安装下了软件了?提示按两下安装,看着图操控,按右键两下,黑屏了。 小米小爱随身音箱说明书pdf 小米小爱音箱play怎么连接无线网络 苹果11按右边两下付款怎么取消? iPhone 12,ios15.4怎么截长图? 两部iphone怎么转移数据 视频导入Premiere编辑后,导出时如何保持原分辨率? premiere导出的视频比原视屏要模糊,怎么才能和原视屏一样清晰? 我想在premiere中导出640X480的文件,请问如何保证原始画质 手机拍的,用pr剪辑导出画质就低了,究竟pr导出视频的时候怎么设置才能导出和原来手机拍的一样清楚。 微信如何删除聊天记录不能恢复 豆角炒饼丝的制作过程 怎么看自己的wifi有几个人在用 中国联通怎么查看wifi有几个人用? 手机怎样查看wifi几个人用 手机怎么看wifi有几个人在用 怎样查看网络有几个人在用 电脑怎么联网?