python写小工具
这个得看你要实现的功能是什么了
2. 用Python写过哪些的小工具
用后缀树找出《红楼梦》中的单词,并且生成一段《红楼梦》风格的文字。
缘起是我之前看到了一篇分析红楼梦词频并判断前八十回和后四十回的作者是否为同一个人的专栏文章(没收藏,所以忘了是哪篇文章了)。文章的作者用的是“结巴分词”这个库来分割单词的。我想,这样半文半白的小说要是现代文的分词模型来进行分词,准确性应该不会很高。于是我就有完全根据红楼梦原文来统计词频的想法。然后我就想到了后缀树,因为后缀树可以很快速地找出字符串中重复的部分,而单词一般都会重复出现。
当然,单词一般会重复出现,但是重复出现的不一定都是单词,还有可能是上一个单词的后半部分和下一个单词前半部分的组合,或者只是完整单词的一部分。所以,在构造后缀树以后,我还设计了一些规则来把不像单词的内容过滤掉。如果一个“单词”的前面经常出现同样的内容,那么这一项很可能只是一个完整单词的后半部分,因此会被去掉。又如,如果一个“单词”出现的次数相对较少,那么很可能只是巧合导致的重复,也会被去掉。这个过程刚好能利用上后缀树里的后缀链,因此非常快速。经过这样的处理之后,生成的单词表里奇怪的内容就少了很多。
实际的规则还要略微复杂一些,比如“出现次数相对较少”的判断标准,会结合单词前半部分出现次数以及单词与后面文字的组合情况进行计算。当时尝试各种计算方法以及阈值的时候也花了不少时间。
然而这个算法还是太简单了,因此还会不小心过滤掉一些真的单词,也会留下一些不是单词的内容。另外,程序经常把词组也当成单词,不过只是生成单词表的话,把词组留下也未尝不可。虽然有这些问题,但是感觉效果还是可以的。
3. 用Python写过哪些脑洞大开的小工具
importImage
color='MNHQ$OC?7>!:-;.'#zifu
defto_html(func):
html_head='''
<html>
<head>
<styletype="text/css">
body{font-family:Monospace;font-size:5px;}
</style>
</head>
<body>'''
html_tail='</body></html>'
#dingyiHTML
defwrapper(img):
pic_str=func(img)
pic_str=''.join(l+'<br/>'forlinpic_str.splitlines())
returnhtml_head+pic_str+html_tail
returnwrapper
#fanhui
@to_html
defmake_char_img(img):
pix=img.load()
pic_str=''
width,height=img.size
forhinxrange(height):
forwinxrange(width):
pic_str+=color[int(pix[w,h])*14/255]
pic_str+=' '
returnpic_str
defpreprocess(img_name):
img=Image.open(img_name)
w,h=img.size
m=max(img.size)
delta=m/200.0
w,h=int(w/delta),int(h/delta)
img=img.resize((w,h))
img=img.convert('L')
returnimg
defsave_to_file(filename,pic_str):
outfile=open(filename,'w')
outfile.write(pic_str)
outfile.close()
defmain():
img=preprocess(raw_input('inputyourfilename:'))
pic_str=make_char_img(img)
save_to_file('char.html',pic_str)
if__name__=='__main__':
main()
4. 利用python编写一个类似QQ截图的小工具应该怎么入手
#保存下面代码为 "微信截图.pyw",并把微信安装文件夹的 PrScrn.dll 文件拷贝到同一目录下
#!/usr/bin/env python
#-*- coding:utf-8 -*-
import ctypes
import os
def capture():
try:
dll = ctypes.cdll.LoadLibrary('PrScrn.dll')
except Exception:
print("Dll load error!")
return
else:
try:
dll.PrScrn(0)
except Exception:
print("Sth wrong in capture!")
return
def main():
os.system("pause")
capture()
if __name__ == "__main__":
main()
如何实现专快捷键截图属:
1. 将上述代码保存为*.pyw格式
2. 右键点击发送到桌面快捷方式
3. 右键点击桌面上该文件的快捷方式 "属性" --> "快捷方式",点击 "快捷键",接着按下 "Ctrl + 你想设置的按键"
4. 保存就好了
5. 如何用python写一个小工具,输入IP后自动调用adb connect XXX.XXX.XX.XX 来无线连接adb
最近在给一个做语音识别的项目做QA工作。众所周知,此类人工智能方面的项目都需要一专些数据收集的工属作。作为一个比较小型的团队,暂时还没有使用外包团队来做大量的数据,前期数据来源都是团队内的同事录音。
我们的录音工具是树莓派+麦克风阵列,通过ssh,可以用电脑操作树莓派开始录音和停止录音。虽然从QA的角度来说,操作非常固定,但是团队同事有近一半同事不是程序猿,看到secureCRT这么恐怖的界面(此处应有图)大多还是有心理障碍。
所以为了提升用户体验(其实是没有工具就得我一个人来录了),用python做了个简单的工具,达到了点点就能用效果。顺带还整合了两三波新的需求
6. 用Python写过哪些的小工具
为了逃避学校布置的美术作业,写过一个画素描的程序。
从后再也不担心美术作业了。
也就是利用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文件了。
7. 想用Python写个桌面应用,用什么GUI工具好
Python自带Tkinter gui
8. 用Python写过哪些的小工具
我学了两个月抄多一点袭时,写了一个小程序,能够从上证A股中筛选出符合筛选策略(有买入信号)的股票,以及计算自定义的筛选策略在历史中盈利情况如何。运行一次需要几分钟才结束。
不过最大的问题是,个人还只是本科在校生,不会炒股,主要还是抱着短期的投机心态,所以那些策略虽然调整了很多次,使用过boll、均线等简单指标进行复合筛选,结果仍不尽人意。要么周期长且收益过低,要么收益高但同时也包含了很多大跌的股票,收益非常不稳定且风险也较大。找不到一个合适的策略。
9. 写windows桌面应用程序学python还是c#想平时写一些小工具什么的自己使用。
只能用.net(其它的包括VC++或者Delphi,VB也是可以的),而且python也是解释型的语言,效率要比.net低的多。(桌面应用方面,用java也是不行的,如果要求稍高的话)
10. python初学者工具用什么工具好呢
对于java程序员,去学习python,pydev+eclipse应该是不错的选择。但对于python程序员选择会很多,初学者专,安装activepython,自带的IDLE,非属常不错,它是纯粹的python用TK写的,可以完成所有的单文件任务;熟练之后可以选择更专业的IDE,比如pycharm,专业的django开发IDE。对于我个人,认识python已经两年,更喜欢sublime text,一款非常有质感,而且功能非常有吸引力(比如它的多行修改功能,插件功能)的IDE,它可以为多种语言服务,并且对于python的以空格为区分语句的风格,sublime,非常不错!