120 lines
7.7 KiB
Markdown
120 lines
7.7 KiB
Markdown
## **本期内容**
|
||
|
||
PyHubWeekly每周定期更新,精选GitHub上优质的Python项目/小工具.
|
||
|
||
如果喜欢,麻烦给个**Star**支持一下吧。此外,**欢迎大家通过提交issue来投稿和推荐自己的项目**~
|
||
|
||
本期为大家推荐GitHub上4个优质的Python项目,它们分别是:
|
||
|
||
- **[tushare](https://github.com/waditu/tushare)**
|
||
- **[python-cheatsheet](https://github.com/gto76/python-cheatsheet)**
|
||
- **[vaex](https://github.com/vaexio/vaex)**
|
||
- **[sh](https://github.com/amoffat/sh)**
|
||
- **[python-small-examples](https://github.com/jackzhenguo/python-small-examples)**
|
||
|
||
下面分别来介绍一下上述5个GitHub项目。
|
||
|
||
> 我建了一个QQ学习交流群,旨在“分享、讨论、学习、资源分享、就业机会、互联网内推、共同进步!”,感兴趣的可以加一下,也可以添加我的QQ~ QQ群:164660119;QQ号:498073774;公众号:【平凡而诗意】~
|
||
|
||
## [1. tushare](https://github.com/waditu/tushare)
|
||
|
||
### **Star:8.8k**
|
||
|
||
数据作为当前很多应用场景是至关重要的一环,例如,计算机视觉、数据分析,没有数据,后续的开发工作和算法准确性就无从谈起。 我们在kaggle、ImageNet能够找到很多开放的数据资源用于我们的开发和研究工具,但是,这些数据这些数据更过的是偏重于工业,更重要的它们都是**静态数据**,也就是说不能及时的对数据进行更新迭代。 金融是数据分析应用非常多的一个方向,也是和我们生活比较密切相关的一个方向,例如,股票等。 我个人是对金融数据分析非常感兴趣,有时候就在想从哪里可以获取到充足的数据支撑自己的研究?[tushare](https://github.com/waditu/tushare)就提供了很好的解决方案。 tushare是实现对股票/期货等金融数据从数据采集、清洗加工到数据存储过程的工具,满足金融量化分析师和学习数据分析的人在数据获取方面的需求,它的特点是数据覆盖范围广,接口调用简单,响应快速。
|
||
|
||
来看一个示例,
|
||
|
||
```
|
||
>>> import tushare as ts
|
||
>>> ts.get_hist_data('600848')
|
||
2020-02-07 20.76 20.93 20.88 20.56 59584.18 0.07 ... 20.738 22.474 23.577 70873.17 58742.91 60007.62
|
||
2020-02-06 20.76 20.97 20.81 20.41 67450.28 0.01 ... 21.280 22.873 23.763 70166.75 60894.69 60617.59
|
||
2020-02-05 20.04 21.37 20.80 20.04 96036.71 0.83 ... 21.944 23.270 23.950 63541.08 59984.14 61566.66
|
||
2020-02-04 19.11 20.78 19.97 19.11 117212.70 -1.26 ... 22.582 23.704 24.114 56576.79 61412.18 59378.58
|
||
2020-02-03 21.23 21.23 21.23 21.23 14082.00 -2.36 ... 23.522 24.165 24.303 40371.67 54241.10 55358.40
|
||
```
|
||
|
||
可以看到,通过一些简单的函数即可获取一直股票的最新数据。
|
||
|
||
tushare除了支持数据采集,还支持清洗加工和数据存储。
|
||
|
||
## [2. python-cheatsheet](https://github.com/gto76/python-cheatsheet)
|
||
|
||
### **Star:10.7k**
|
||
|
||
[python-cheatsheet](https://github.com/gto76/python-cheatsheet)是一个非常全面的Python手册。
|
||
|
||
在很多系列化的教程和数据中,我们千篇一律的学习运算法、条件语句、循环语句、面向对象等。但是,对于开发过程中经常会用到的**实用知识点**却很少有系统的阐述。python-cheatsheet就弥补了这项空白,它很系统全面的介绍了Python实用知识点,它主要包括如下几个部分的内容,
|
||
|
||
- **容器**:列表、字典、集合等。
|
||
- **类型**:字符串、数字、日期、格式化等。
|
||
- **语法**:装饰器、类等。
|
||
- **数据**:JSON、pickle等。
|
||
- **高级**:多线程、运算法等。
|
||
- **模块**:NumPy、Logging等。
|
||
|
||
![img](https://pic2.zhimg.com/v2-7e754066333c6c0e3daf7bf041170569_b.png)
|
||
|
||
## [3. vaex](https://github.com/vaexio/vaex)
|
||
|
||
**Star:2.8k**
|
||
|
||
[vaex](https://github.com/vaexio/vaex)是一款类似于Pandas的的表格数据集处理和可视化工具,但是它在**大量数据**方面拥有Pandas所不具备的优势:**快速**。
|
||
|
||
vaex使用内存映射、零内存复制的策略可以实现每秒在超过**十亿**个对象的N维网格数据计算平均值、和、计数、标准差等。此外,还可以使用柱状图、密度图、三维图进行可视化。
|
||
|
||
因此,它相对于其他数据处理工具具有如下几点优势,
|
||
|
||
- 性能表现优秀
|
||
- 高效的内存处理
|
||
- 可视化
|
||
- 用户友好
|
||
- 支持jupyter
|
||
- 轻量化
|
||
|
||
## [4. sh](https://github.com/amoffat/sh)
|
||
|
||
### **Star:5.2k**
|
||
|
||
多进程是我们在开发过程中经常会接触到的场景,每当希望提升项目运行效率时,多进程就是其中备选项之一。
|
||
|
||
在Python开发中,当提到多进程是都会涉及到**subprocess**,它是Python内置的模块,因此,使用频率非常高。
|
||
|
||
今天介绍的[sh](https://github.com/amoffat/sh)是Python 2.6-3.6中subprocess非常值得尝试的替代者。
|
||
|
||
**它能够让你向调用Python函数一样去调用系统命令和程序。**
|
||
|
||
```
|
||
>>> from sh import ifconfig
|
||
>>> print(ifconfig("wlan0"))
|
||
wlan0 Link encap:Ethernet HWaddr 00:00:00:00:00:00
|
||
inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0
|
||
inet6 addr: ffff::ffff:ffff:ffff:fff/64 Scope:Link
|
||
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
|
||
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
|
||
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
|
||
collisions:0 txqueuelen:1000
|
||
RX bytes:0 (0 GB) TX bytes:0 (0 GB)
|
||
```
|
||
|
||
但是,需要指出,当前sh仅支持**Linux**和**osx**,不支持Windows。
|
||
|
||
## [5. python-small-examples](https://github.com/jackzhenguo/python-small-examples)
|
||
|
||
### **Star:1.8k**
|
||
|
||
[python-small-examples](https://github.com/jackzhenguo/python-small-examples)是一个可以在**闲暇之余**抽空看看的Python学习项目。
|
||
|
||
python-small-examples收集了Python开发过程中遇到的坑点、小样例,其中包括Python字符串和正则、Python绘图、Python日期和文件、Web开发、数据科学、机器学习、深度学习、TensorFlow、Pytorch等。
|
||
|
||
对于这个项目,没必要花费太多时间系统的去学习,可以利用空闲时间看一下,它里面总结了开发过程中经常用到的操作,当我们看到这些示例时会从中学习到很多教材上无法学到的妙用,或者Python中“不为人知”的冷门知识。
|
||
|
||
![img](https://pic4.zhimg.com/v2-60adb891a9efd5f9918c53b012bf9b17_b.png)
|
||
|
||
## **推荐阅读**
|
||
|
||
- [Python参数配置库ConfigParser详解](https://mp.weixin.qq.com/s?__biz=MzI0NTM1MzA2Mw==&mid=2247484889&idx=1&sn=533d1b59410f8322a0c033afb861cfe6&chksm=e94e9ad1de3913c759960ad12db322daee45d108ebac658bf374fc3dd40f6f36f2692da23e06&token=1456867850&lang=zh_CN#rd)
|
||
- [迫不及待把这款开发神器推荐给大家!](https://mp.weixin.qq.com/s?__biz=MzI0NTM1MzA2Mw==&mid=2247484903&idx=1&sn=59dead902c4acc16c5149e3f838aab2d&chksm=e94e9aefde3913f9dc1bd9e584f4a76543253f0bc74354cc6230f2a49a319636e010d9ebb5db&token=1456867850&lang=zh_CN#rd)
|
||
- [抛弃bash,拥抱zsh!](https://mp.weixin.qq.com/s?__biz=MzI0NTM1MzA2Mw==&mid=2247484911&idx=1&sn=a02cb8db9508494672f86353acf48783&chksm=e94e9ae7de3913f137dda3702c314af3655c974f31ee7df7f79d7bb982f8f8d0f35adb751176&token=1456867850&lang=zh_CN#rd)
|
||
- [PyHubWeekly | 第四期:清理无效代码,给你的项目瘦瘦身吧!](https://mp.weixin.qq.com/s?__biz=MzI0NTM1MzA2Mw==&mid=2247484925&idx=1&sn=3cab27e39dfd34bff4aaa9c4b197ec3f&chksm=e94e9af5de3913e3199f96fb7a4304cb865387973b7552ec4ae77f5e4cfb4131badedbd021ff&token=1456867850&lang=zh_CN#rd)
|
||
- [实用工具 | 一款丰富强大的Python绘图工具](https://mp.weixin.qq.com/s?__biz=MzI0NTM1MzA2Mw==&mid=2247484941&idx=1&sn=f5723139558043be73491df76a94da08&chksm=e94e9905de3910134d3afe346678d131fa9f01633879f58880c2e2ecfa1d8b66edaf44886ba3&token=1456867850&lang=zh_CN#rd) |