学什么:
第一步:先考虑基本库和Numpy、Pandas与Matplotlib的学习。估计会是好几个月的甚至更长的学习阶段,估计会出30个左右个人比较感兴趣的demo吧。
第二步:这个阶段过完了后,下一步应该会是学习数据挖掘和爬虫,从数据网站找一些数据,然后做数据可视化和信息分析。数据分析,那数据结构和数据库自然少不了,C++也安排上吧。
第三步:如果数据挖掘阶段也顺利度过了,接下来估计会考虑自然语言处理NLP和ML、Deep Learning。这个不知道要几年后才会接触到了,先安排上吧。学还是不学,看心情咯。
不学什么:(不会花太多时间的地方)
- Web编程
- 网络编程
- 项目开发
核心库
- Numpy
- matplotlib
- pandas
词云方面
- wordcloud
- jieba
- PIL
二、环境的安装和测试
检查pip
pip --version
如何安装pip?
sudo apt install python-pip
如果是pip3命令修改为:【sudo apt install python3-pip】
如果安装的是pip想换成pip3怎么卸载?
python -m pip uninstall pip
sudo apt-get remove python-pip python-pip
You are using pip version 19.0.3, however version 20.2b1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.
Q:使用pip下载速度很慢怎么办?
A:提高pip下载速度:使用国内pip镜像源提高pip下载速度
国内源:
新版ubuntu要求使用https源,要注意。
清华:https://pypi.tuna.tsinghua.edu.cn/simple
阿里云:http://mirrors.aliyun.com/pypi/simple/
中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
华中理工大学:http://pypi.hustunique.com/
山东理工大学:http://pypi.sdutlinux.org/
上海交通大学:https://mirrors.sjtug.sjtu.edu.cn/
豆瓣:http://pypi.douban.com/simple/
临时使用:pip install 库名 -i 镜像地址
如使用豆瓣源下载numpy
pip install numpy -i http://pypi.douban.com/simple/
Q:pip命令如何查看安装的库?
pip3 list
永久修改(暂时不考虑)
安装支持的库
pip install numpy scipy pandas matplotlib
检查安装是否成功
3、查看Numpy版本
python -c "import numpy; print numpy.version.version"
或
python -c "import numpy; print numpy.version"
4、查看Numpy安装路径
python -c "import numpy; print numpy.file"
5、查看SciPy版本
python -c "import scipy; print scipy.version.version"
或
python -c "import scipy; print scipy.version"
6、查看SciPy安装路径
python -c "import scipy; print scipy.file"
7、查看Matplotlib版本
python -c "import matplotlib; print matplotlib.version.version"
或
python -c "import matplotlib; print matplotlib.version"
8、查看SciPy安装路径
python -c "import matplotlib; print matplotlib.file"
Networkx
# coding=utf-8
import networkx as nx
import matplotlib.pyplot as plt
'''
目的:测试networkx 环境
时间:20200822
作者:Tamkery
'''
G=nx.Graph()
G.add_edge(1,2)
nx.draw_networkx(G)
plt.show()
文件名不要用netwox,
绘制有向图Demo
# coding=utf-8
import networkx as nx
import matplotlib.pyplot as plt
'''案例2'''
#中文兼容性
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
##绘制有向图
G1=nx.DiGraph() #
#add_node()给图添加节点
G1.add_node('法外狂徒张三')
G1.add_node('经常背锅王二')
G1.add_node('让子弹飞李四')
# 测试用
#a=list(G1.nodes()) # 通过nodes()函数获取节点的列表
#print(a) # 打印节点list
#add_edge()给图添加边
G1.add_edge('法外狂徒张三', '经常背锅王二') # 3 to 2 张三到王二的有向边
G1.add_edge('法外狂徒张三', '让子弹飞李四')#3 to 4
G1.add_edge( '经常背锅王二','法外狂徒张三')# 2 to 3
G1.add_edge( '经常背锅王二','让子弹飞李四') # 2 to 4
# networkx 提供的draw_circular()将节点排列成一个个圆,并将它们与边连接起来
nx.draw_circular(G1,
node_color='#1E90FF',
node_size=2000,
with_labels=True )
plt.show()
遇到节点中文乱码问题:加下面这段语句:
#中文兼容性
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']