python 有趣的库练习
这里会将看到别人玩过有趣的实践并记录下来,会是一个长期更新的过程...
以下大部分均非原创变化自网络,只是觉得有趣便记录下来了,如有侵权,请告知删除...
自动化脚本。。。

20个必不可少的Python库
转载:http://www.python123.org/tutorials/58b41f2a28c8f30100bd41dc
读者们好。今天我将介绍20个属于我常用工具的Python库,我相信你看完之后也会觉得离不开它们。他们是:
Requests.Kenneth Reitz写的最富盛名的http库。每个Python程序员都应该有它。
Scrapy.如果你从事爬虫相关的工作,那么这个库也是必不可少的。用过它之后你就不会再想用别的同类库了。
wxPython.Python的一个GUI(图形用户界面)工具。我主要用它替代tkinter。你一定会爱上它的。
Pillow.它是PIL(Python图形库)的一个友好分支。对于用户比PIL更加友好,对于任何在图形领域工作的人是必备的库。
SQLAlchemy.一个数据库的库。对它的评价褒贬参半。是否使用的决定权在你手里。
BeautifulSoup.我知道它很慢,但这个xml和html的解析库对于新手非常有用。
Twisted.对于网络应用开发者最重要的工具。它有非常优美的api,被很多Python开发大牛使用。
NumPy.我们怎么能缺少这么重要的库?它为Python提供了很多高级的数学方法。
SciPy.既然我们提了NumPy,那就不得不提一下SciPy。这是一个Python的算法和数学工具库,它的功能把很多科学家从Ruby吸引到了Python。
matplotlib.一个绘制数据图的库。对于数据科学家或分析师非常有用。
Pygame.哪个程序员不喜欢玩游戏和写游戏?这个库会让你在开发2D游戏的时候如虎添翼。
Pyglet.3D动画和游戏开发引擎。非常有名的Python版本Minecraft就是用这个引擎做的。
pyQT.Python的GUI工具。这是我在给Python脚本开发用户界面时次于wxPython的选择。
pyGtk.也是Python GUI库。很有名的Bittorrent客户端就是用它做的。
Scapy.用Python写的数据包探测和分析库。
pywin32.一个提供和windows交互的方法和类的Python库。
nltk.自然语言工具包。我知道大多数人不会用它,但它通用性非常高。如果你需要处理字符串的话,它是非常好的库。但它的功能远远不止如此,自己摸索一下吧。
nose.Python的测试框架。被成千上万的Python程序员使用。如果你做测试导向的开发,那么它是必不可少的。
SymPy.SymPy可以做代数评测、差异化、扩展、复数等等。它封装在一个纯Python发行版本里。
IPython.怎么称赞这个工具的功能都不为过。它把Python的提示信息做到了极致。包括完成信息、历史信息、shell功能,以及其他很多很多方面。一定要研究一下它。
我希望你喜欢今天的文章。请在评论区留下你的看法。如果你觉得有哪个库被遗漏了请在评论里告诉我,我会把它加上去。请留意下一期的文章。
英文原文:https://pythontips.com/2013/07/30/20-python-libraries-you-cant-live-without/ 译者:shambala
python gui 之 wxpython
# -*- coding: utf-8 -*-
__author__ = 'Frank Li'
import wx
app = wx.App()
frame = wx.Frame(None,title = "Gui Test Editor",pos = (1000,200),size = (500,400))
path_text = wx.TextCtrl(frame,pos = (5,5),size = (350,24))
open_button = wx.Button(frame,label = "打开",pos = (370,5),size = (50,24))
save_button = wx.Button(frame,label = "保存",pos = (430,5),size = (50,24))
content_text= wx.TextCtrl(frame,pos = (5,39),size = (475,300),style = wx.TE_MULTILINE) # wx.TE_MULTILINE可以实现换行功能,若不加此功能文本文档显示为一行显示
frame.Show()
app.MainLoop()
QQ 简单聊天接入图灵机器人
# -*- coding: utf-8 -*-
__author__ = 'Frank Li'
from qqbot import QQBotSlot as qqbotslot,RunBot
# import turing
from random import choice
from qqbot import qqbotsched
import requests
import json
key = '2e30d196049c4751b0254604a34ee858'
# QQBot 就是一个qq登录的类
# myqqbot = QQBot() #实例化一个qq实例
# myqqbot.Login('57xxxx') #进行登录,执行这条命令,系统会弹出一个二维码,我们扫码登录
# myqqbot.pollForever()
def main(info):
url = 'http://www.tuling123.com/openapi/api?key='+key+'&info='+info
res = requests.get(url)
res.encoding = 'utf-8'
jd = json.loads(res.text)
return jd['text']
@qqbotsched(hour='11,16', minute='40')
def mytask(bot):
resturant_list = ['煲仔饭','黄焖鸡','浏阳蒸菜','津市牛肉粉','更多未知']
gl = bot.List('group', '守望把开水')
if gl is not None:
for group in gl:
bot.SendTo(group, '哔哔哔,同志们,开饭啦啦啦啦啦啦!!!')
bot.SendTo(group, '今天随机餐馆--\\>'+choice(resturant_list))
friend = []
@qqbotslot
def onQQMessage(bot, contact, member, content):
# print(bot.List('group'))
if bot.isMe(contact,member):
# print('is me!!!')
pass
elif '@ME' in content:
bot.SendTo(contact, '嗨! '+member.name + ',艾特我干嘛呢?')
elif contact.ctype == 'buddy' and "--stop" == content:
if contact.mark in friend:
friend.remove(contact.mark)
bot.SendTo(contact, '关闭机器人')
elif contact.ctype == 'buddy' and "--start" == content and '哈哈,哈哈哈,哈哈哈哈哈' != contact.mark:
if contact.mark not in friend:
friend.append(contact.mark)
bot.SendTo(contact, '欢迎使用机器人')
elif contact.ctype == 'buddy' and not bot.isMe(contact,member):
daan = main(content)
bot.SendTo(contact, '
python 有趣的库练习的更多相关文章
- python 中有趣的库tqdm
Tqdm 是 Python 进度条库,可以在 Python 长循环中添加一个进度提示信息用法:tqdm(iterator) # 方法1: import time from tqdm import tq ...
- Python底层socket库
Python底层socket库将Unix关于网络通信的系统调用对象化处理,是底层函数的高级封装,socket()函数返回一个套接字,它的方法实现了各种套接字系统调用.read与write与Python ...
- 【C++实现python字符串函数库】strip、lstrip、rstrip方法
[C++实现python字符串函数库]strip.lstrip.rstrip方法 这三个方法用于删除字符串首尾处指定的字符,默认删除空白符(包括'\n', '\r', '\t', ' '). s.st ...
- 【C++实现python字符串函数库】二:字符串匹配函数startswith与endswith
[C++实现python字符串函数库]字符串匹配函数startswith与endswith 这两个函数用于匹配字符串的开头或末尾,判断是否包含另一个字符串,它们返回bool值.startswith() ...
- 【C++实现python字符串函数库】一:分割函数:split、rsplit
[C++实现python字符串函数库]split()与rsplit()方法 前言 本系列文章将介绍python提供的字符串函数,并尝试使用C++来实现这些函数.这些C++函数在这里做单独的分析,最后我 ...
- python使用cookielib库示例分享
Python中cookielib库(python3中为http.cookiejar)为存储和管理cookie提供客户端支持,下面是使用示例 该模块主要功能是提供可存储cookie的对象.使用此模块捕获 ...
- Python virtualenv安装库报错SSL: CERTIFICATE_VERIFY_FAILED
Python virtualenv安装库报错SSL: CERTIFICATE_VERIFY_FAILED 问题描述 使用pip按照virtualenv报错,如下: pip install virtua ...
- 【python】标准库的大致认识
正如那句 Python 社区中很有名的话所说的:“battery included”,Python 的一大好处在于它有一套很有用的标准库(standard library).标准库是随着 Python ...
- Python 图形 GUI 库 pyqtgraph
原文 Python 图形 GUI 库 pyqtgraph pyqtgraph 是纯 Python 图形 GUI 库,基于PyQT4 /pyside和NumPy.它主要目的用于在数学/科学/工程中.M ...
随机推荐
- 「UVA10766」Organising the Organisation(生成树计数)
BUPT 2017 Summer Training (for 16) #6C 题意 n个点,完全图减去m条边,求生成树个数. 题解 注意可能会给重边. 然后就是生成树计数了. 代码 #include ...
- Asp.Net Output.Write()
string name="张三" <div> <label>@Output.Write(name)</label> </div> 在 ...
- 「HNOI2016」树 解题报告
「HNOI2016」树 事毒瘤题... 我一开始以为每次把大树的子树再接给大树,然后死活不知道咋做,心想怕不是个神仙题哦 然后看题解后才发现是把模板树的子树给大树,虽然思维上难度没啥了,但是还是很难写 ...
- HR_Minimum Swaps 2
源代码超时 看了评论区改用了字典序列. #!/bin/python3 import math import os import random import re import sys # Comple ...
- UVA10559 Blocks(区间dp)
有n个带有颜色的方块,没消除一段长度为x的连续的相同颜色的方块可以得到x^2的分数,让你用一种最优的顺序消除所有方块使得得分最多. 输入格式 第一行包含测试的次数t(1≤t≤15) 每个案例包含两行. ...
- 洛谷P1712 区间
题意:给你n个区间,从中选择m个,使得它们有交,且最长与最短区间的差值最小. 解:这道题我想了好多的,nlog²n错的,nlogn错的,最后终于想出nlogn的了...... 把区间按照长度排序,然后 ...
- js 日期比较大小,js判断日期是否在区间内,js判断时间段是否在另外一个时间段内
/** * 日期解析,字符串转日期 * @param dateString 可以为2017-02-16,2017/02/16,2017.02.16 * @returns {Date} 返回对应的日期对 ...
- vue学习(3)
回顾昨天内容 1.let和const 2.模板字符串 `` 插变量${变量名} 3.箭头函数 function(){} == ()=>{} 1.this的指向问题 2.arguments不能使用 ...
- C++ template一些体悟(2)
class template的一般化设计之外,特别针对某些参数做特殊设计 #include <iostream> using namespace std; //一般设计 template& ...
- poj 2229 Sumsets(记录结果再利用的DP)
传送门 https://www.cnblogs.com/violet-acmer/p/9852294.html 题意: 将一个数N分解为2的幂之和共有几种分法? 题解: 定义dp[ i ]为数 i 的 ...