你都用 Python 来做什么?

你们都用python做些什么呢?

在开发中 python 这一个语言就像是小叮当,而 python 的第三方库则是“百宝箱”,你只要想着对某一个方向进行开发,那么这个“百宝箱”就会给你想要的东西。
由于我是在开发多年后接触到的 python,对我来说自从接触 python 就打开了“新世界”的大门。(我正在求设计做一张图,还没做完,做完贴上在这里)

一、做个自己玩游戏的程序

在前几年,我有一个朋友是一个“游戏商人”,不过大多数他是手动进行商品处理。
他有一天找到我,跟我说“嗨兄弟,会不会做外G?”!
此时我觉得他在嘲讽我,为了我自己的自尊,我回答了“不会!”。
请添加图片描述
有一说一,我是一个正经程序员,那一方面我真的不会。不过在他看起来程序员就应该要解决计算机的一切问题,在此观点作祟之下,他一而再再而三的缠着我,最后我听了一下他的需求之后,我又觉得我可以了。

当时他的需求是想完成一个游戏的自动化操作(他自己一个人手动操作烦死了,据说一天可以赚好几百),当时我研究了一下他所说的一个手机游戏,发现所有逻辑都是“死”的,升级套路有固定剧情,并且对应的游戏玩法也相对固定,看他如此坚持我就同意了。

接下来我查了一下 python 相关的资料,发现了一个神奇的东西 Airtest,是网易开发的,据说是为了做一些测试,在原生应用下简直可以“为所欲为”。为了测试这个东西的是否真的牛啤,我就直接下载了 Airtest 的 IDE,在开发时踩了一些坑,但最终还是实现了对应项目的 自动化操作。最后我朋友感激涕零的拉着我喝了三天三夜,当时我觉得我不应该做出来给他去祸害我自己。

二、自动化办公

说到这个自动化办公我本身是不涉及到的,但在粉丝群里有很多同学是为了自动化办公而学习的python,但是由于经验不足,导致学完后自己却不能完成一些应用的开发,就在群里面艾特到我讲解一些功能如何实现。

在这里插入图片描述
我列出了几个比较常规的需求:

  1. 批量文本提取出手机号码
  2. 批量文本存储到 Excel 中
  3. 批量文本提取出邮箱
  4. 批量图片加水印
  5. 批量删除重复文件
  6. 批量文章算中文字数
  7. 批量生成gif
  8. 批量英文翻译
  9. 视频音轨批量提取

像取电话号码、邮箱基本上都是直接使用正则就可以提取了,若是需要操作 Excel 只需要使用 xlwt 库就可以完成,加水印这些只需要使用 opencv 库,对比相同文件只需要判断 md5 文件的值就可以了,翻译就是使用 translate 库。
由于代码不难,我就不在这里写出来了,如果需要的评论区可以留言,人多的话我就更新话题把代码也讲一遍了。

想了想,为了大家的收藏量我决定直接把代码打出来吧。

自动化办公解释文章跳转:https://blog.csdn.net/A757291228/article/details/117464313。

批量文本提取出手机号码:

#读取目标文本文件
def get_str(path):f = open(path,encoding="utf-8")  data = f.read()f.close()return data
import re#正则获取文本号码
def get_phone_number(str):res = re.findall(r'(13\d{9}|14[5|7]\d{8}|15\d{9}|166{\d{8}|17[3|6|7]{\d{8}|18\d{9})', str)return res
#保存得到号码
def save_res(res,save_path):save_file = open(save_path, 'w') for phone in res: save_file.write(phone) save_file.write('\n') save_file.write('\n号码共计:'+str(len(res)))save_file.close() print('号码读取OK,号码共计:'+str(len(res)))
path=input("请输入文件路径:")
save_path=input("请输入文件保存路径:")
#read_str=get_str(path)
res=get_phone_number(get_str(path))
save_res(res,save_path)

批量文本存储到 Excel 中:

import xlwt
#读取目标文本文件
def get_str(path):f = open(path,encoding="utf-8")  data = f.read()f.close()return data
#保存为Excel文件
def save_excel(save_path,sheetname,column_name_list,read_list):workbook = xlwt.Workbook()sheet1 = workbook.add_sheet(sheetname=sheetname)for i in range(0,len(column_name_list)):sheet1.write(0,i,column_name_list[i])i=1for v in read_list:kval=v.split(':')for j in range(0,len(kval)):sheet1.write(i+1,j,kval[j])i=i+1workbook.save(save_path)print('信息保存 OK,记录条数共计:'+str(len(read_list)))
path=input("请输入文件路径:")
save_path=input("请输入文件保存路径:")
sheet_name=input("请输入sheetname:")
column_name=input("请输入列名,并且使用英文逗号隔开:")
column_name_list=column_name.split(',')read_str=get_str(path)
read_list=read_str.split('\n')
save_excel(save_path,sheet_name,column_name_list,read_list)

批量删除重复文件:

import hashlib,os
def getMD5(filepath):f = open(filepath,'rb')md5obj = hashlib.md5()md5obj.update(f.read())hash = md5obj.hexdigest()f.close()return str(hash).upper()
path=input("请输入需要重复文件过滤文件夹路径:")
file_list = os.listdir(path)
file_md5=[]
for filename in file_list:md5val=getMD5(path+filename)if md5val in file_md5:os.remove(path+filename)else:file_md5.append(md5val)
print("处理完毕...")

批量英文翻译:

from translate import Translator
translator = Translator(to_lang="Chinese")
def get_str(path):f = open(path)  data = f.read()f.close()return data
path=input("请输入文件路径:")
text=get_str(path)

以上的代码是基础代码,相似需求的内容我就不贴出来了。
代码需要大家修改哟,代码很简单,看看就ok了。

三、python 爬虫

在这里插入图片描述
python 还可以去做一些爬虫方面的开发,例如你想要一些数据进行研究,可能你会使用 scrapy 之类的 python 爬虫框架,也可以使用 selenium 自动化测试框架做爬虫也是很方便。

专业用 scrapy 当然会更强大,但是 selenium 对于新手来说用起来也是非常棒的,可以忽略很多问题对网页信息进行提取。

但是需要注意,爬虫一定要合规使用哟。

四、python 机器学习、图像识别

请添加图片描述
python 做人工智能这一块也是非常方便,我记得我之前辅导一个情报学的同学做一个舆情分析系统,当时就是用了 python 制作,结合使用 sklearn 库,在可允许的误差中实现了这一套系统,这个还是非常棒的。

python 还可以通过 opencv 做图像识别,或者对图像进行模糊、加强等操作。我当时接触 opencv 是因为有一个平台说要征稿,一番计算之后发现学习成本和稿酬相比,稿酬比较诱人,接着我就接触了,就写了一些小东西,这个体验还是非常赞的。

五、python web方面

请添加图片描述
用 python 做 web 方面是一个较为常规的方向,python web 我接触的比较晚,因为之前做 web 我是使用的 php(为什么不用 java 是因为我年少时被 java 坑太惨了)。

我第一个接触的 python web 框架是 django。当时由于公司的一个项目是使用了 django 进行开发,我问开发(小农同学)这东西玩得怎么样,他跟我说“太简单了,直接就可以生成一个完整的项目。”!

我一听,心想这不就是跟那些 WordPress、discuz 一样吗?这还是 python?

于是为了搞懂 django,自己试了一下,果真 django 对开发一些项目及其方便。若使用 django 可以将其比喻成房子的地基(且软硬完全),再通过自己编写一“模块”为这个房子添加更多功能,在开发一些方向的 web 来说是非常方便的。

之后查了一下资料,发现了 Instagram 竟然就是 django 进行开发的。
在这里插入图片描述

六、画画

在这里插入图片描述
python 还可以通过代码画画,通过 turtle 画出很精美的作品。

turtle 是 python 的一个图像绘制库,我从资料上得知 turtle 是用来给青少年学习更好 python 的方式。我尝试了一下,确实很赞,下面就是我之前绘制出的一颗清新小树:
在这里插入图片描述
这里是我的代码,解释文章跳转:ttps://blog.csdn.net/A757291228/article/details/106029202:

from turtle import *
import randomdef drawTree(length):if length>1:if length<30 and length>14:#缩小一下树干pensize(4)elif length<15 and length>5:#长度这个范围内那么就是绿叶color('#04B486')#pensize(3)elif length<5 and length>1:#红花color('#FE2E9A')pensize(2)else:color('#5E5E5E')#其他范围就是正常的树干pensize(5)#随机角度与长度randangle=2*random.random()randlen=2*random.random()#每次使用函数先绘制线段,再调整角度,这里是向右的角度转动fd(length)right(20*randangle)drawTree(length - 10*randlen)#这里是向左的角度转动left(40 * randangle)drawTree(length - 10*randlen)#为什么需要再向右转20度?那是因为我一共向左转了40度,使用backward后退,必须是相同的角度,不然退回去角度就不同了位置就不会对right(20 * randangle)up()backward(length)down()
def fallingFlowers(m):x,y=-1000,-750for i in range(30):up()goto(x,y)x+=100down()yval=50for i in range(m):a = 100*random.random()b = 2*random.random()print(a)if a>59:color('#FE2E9A')else:color('#04B486')circle(5)up()goto(x,y+(yval*b))fd(a)yval+=50down()      setworldcoordinates(-1000,-750,1000,750)        
tracer(False)fallingFlowers(10)#绘制落叶
bgcolor("#F5F6CE")
color('#5E5E5E')
pensize(5)up()
goto(0,-700)#跳到绘制起始点
down()left(80)
fd(140)
drawTree(120)input()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/286674.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android之tint图片着色器

1、爆照 上面是原图,下面是点击效果。 2、介绍 设置着色模式用的。这个模式共有6种,分别为: multiply screen src_in(默认) src_over src_atop add android:tint 属性可以改变图片颜色 3 源代码 colors.xml <?xml version="1.0" encoding="utf-8&qu…

关于 Oracle分页数据重复的问题

2019独角兽企业重金招聘Python工程师标准>>> 先说问题吧。最近在测试一个新的模块&#xff0c;发现列表数据的前三页数据竟然是一样的。第一反应是 pageNo 的问题&#xff0c;debug一看&#xff0c;pageNo是正确的&#xff0c;然后一层层debug下去&#xff0c;所有参…

10分钟做一个新闻问答web站点[iVX低代码实战]

一、创建首页 进入到iVX线上编辑器后&#xff0c;选择相对定位。 点击创建后进入到 IDE 之中&#xff1a; 我们在第一步中首先创建一个首页。点击左侧组件栏中的页面组件&#xff0c;创建一个页面&#xff1a; 接着重命名该页面为Home&#xff0c;在页面中创建一个行&#x…

iOS开发网络篇—网络编程基础

一、为什么要学习网络编程 1.简单说明 在移动互联网时代&#xff0c;移动应用的特征有&#xff1a; &#xff08;1&#xff09;几乎所有应用都需要用到网络&#xff0c;比如QQ、微博、网易新闻、优酷、百度地图 &#xff08;2&#xff09;只有通过网络跟外界进行数据交互、数据…

深入理解Three.js(WebGL)贴图(纹理映射)和UV映射

本文将详细描述如何使用Three.js给3D对象添加贴图&#xff08;Texture Map&#xff0c;也译作纹理映射&#xff0c;“贴图”的翻译要更直观&#xff0c;而“纹理映射”更准确。&#xff09;。为了能够查看在线演示效果&#xff0c;你需要有一个兼容WebGL的现代浏览器&#xff0…

在兰州吃牛肉面时亲眼目睹的一幕,我感动了

今天中午去吃占国牛肉面&#xff0c;人比较多&#xff0c;很热闹。旁边坐了一群身穿校服的小学生&#xff0c;身后坐着一位小学老师&#xff0c;当孩子们发现老师在后面的时候&#xff0c;都异口同声地叫老师过去跟他们一起吃&#xff0c;老师嘿的一笑&#xff0c;没同意&#…

如何跨 Namespace 同步 Secret 和 ConfigMap?

Secret 和 ConfigMap 资源对象是命名空间级别的。它们只能被同一命名空间中的 Pod 引用。所以有时候不得不手动为每个命名空间创建它们。但有很多场景&#xff0c;我们想让它们是全局的&#xff0c;至少可以是跨命名空间共享的 Secret 和 ConfigMap&#xff0c;例如这些场景&am…

一文总结学习 Python 的 14 张思维导图

本文主要涵盖了 Python 编程的核心知识&#xff08;暂不包括标准库及第三方库&#xff0c;后续会发布相应专题的文章&#xff09;。 首先&#xff0c;按顺序依次展示了以下内容的一系列思维导图&#xff1a;基础知识&#xff0c;数据类型&#xff08;数字&#xff0c;字符串&am…

GEE学习笔记

掩膜 ​ 在遥感图像处理中&#xff0c;"掩膜"是指一种用于隐藏或保留图像特定部分的技术。掩膜通常是一个二进制图像&#xff0c;其中的像素值为0或1&#xff0c;分别表示遮蔽或保留。 ​ 在去除云的情境中&#xff0c;掩膜通常用于隐藏图像中被云覆盖的部分&#…

十一、飞机大战(IVX 快速开发教程)

十一、飞机大战 制作微信小游戏大致流程与微信小程序、Web类似&#xff0c;不同的在于是组件的使用。 文章目录十一、飞机大战11.1.1 完成游戏角色制作11.1.2 完成物理世界添加11.1.3 完成子弹对象反重力运动11.1.4 使用对象组创建子弹11.1.5 子弹优化11.1.6 设置敌机11.1.7 优…

中国版LinkedIn呼之欲出

迄今为止&#xff0c;发展势头强劲的Facebook仍未上市&#xff0c;而美国职业社交网站LinkedIn 却率先登录纽约证券交易所&#xff0c;股价在第一天的交易中飙升&#xff0c;从45美元的发行价上涨了一倍&#xff0c;然后超过100美元&#xff0c;最终以94.25美元收盘。 LinkedIn…

Android之实现RecyclerView拖拽效果和固定部分元素不进行交换位置(包含源代码下载地址)

1、效果爆照 启动的效果 拖动过程中的效果 拖动后的效果 2、需求和问题 需求:RecyclerView实现拖拽效果,但是部分固定位置不能进行拖拽也不能在拖拽的过程中交换顺序

各主流浏览器内核介绍

所谓的“浏览器内核”无非指的是一个浏览器最核心的部分——“Rendering Engine”&#xff0c;直译这个词汇叫做“渲染引擎”&#xff0c;不过我们也常称其为“排版引擎”、“解释引擎”。这个引擎的作用是帮助浏览器来渲染网页的内容&#xff0c;将页面内 容和排版代码转换为用…

测绘地理信息标准(国家、行业、地方)大全来了:测绘地理信息标准化服务平台

测绘地理信息标准化服务平台&#xff0c;这里有你需要的所有标准&#xff0c;赶快来围观吧&#xff01;

WPF效果第一百八十七篇之再玩ListBox

大周末的接着上一篇又玩了ListBox,这不又来再次去玩耍ListBox;毕竟是我的最爱,没办法就喜欢玩耍他;闲话也不多扯了,直接看最终效果:2、ItemsPanel还是老样子:<ItemsPanelTemplate x:Key"CommonItemsPanelTemplate"><WrapPanel Orientation"Horizontal&…

利用pdf.js开发嵌入pdf显示,以及利用jquery-ui左右分栏显示

原来考虑用pdf.js的viewer.html页面&#xff0c;但怎么用都不方便。因此直接用pdf.js在左侧连续显示pdf所有内容&#xff0c;右侧显示其它相关内容&#xff0c;并且左右宽度可以任意拖动&#xff0c;最终实现效果如图&#xff1a; 代码&#xff1a;<!DOCTYPE html><ht…

十三、制作 iVX音乐分享小程序

功能介绍 通过前几节的学习&#xff0c;我们对完成一个应用已经有了一些自己的心得。在此再次再制作一个小的音乐小程序应用。该应用一共分为首页、榜单页、音乐分享页和音乐搜索页。 首页&#xff1a; 榜单内容页&#xff1a; 音乐分享页&#xff1a; 音乐搜索页&#xff1a…

01_反射_02_反射类的构造方法

【工程截图】 【Person.java】 //将要被反射的类 package com.Higgin.reflect; import java.util.List;public class Person {private String name"NULL";private int age0;public Person(){System.out.println("构造方法&#xff1a;Person()");}public P…

私有云搭建 OpenStack(centos7.3, centos-release-openstack-ocata)

OpenStack&#xff08;centos7.3,centos-release-openstack-ocata&#xff09;nova&#xff1a;计算节点queue&#xff1a;消息队列&#xff0c;系统瓶颈所在scheduler&#xff1a;调度机制conductor&#xff1a;更新数据库cert&#xff08;objectstore&#xff09;&#xff1a…

C# 类继承中的私有字段都去了哪里?

最近在看 C 类继承中的字段内存布局&#xff0c;我就很好奇 C# 中的继承链那些 private 字段都哪里去了? 在内存中是如何布局的&#xff0c;毕竟在子类中是无法访问的。一&#xff1a;举例说明 为了方便讲述&#xff0c;先上一个例子&#xff1a;internal class Program{stati…