python 梳理:安装并开始使用

ipynb 文件地址:安装并开始使用

一、安装 Anaconda

1 Anaconda 是什么?

Anaconda 是python的一个发行版,内置了很多其他工具,也免去了这些工具单独安装和配置的麻烦。

简单说就是一个 python语言的使用平台(当然也包括其他语言),不仅包含了python这个编程语言还有所需要的 __集成环境__和python编程所需要的一些 工具(如编辑器),还包含了一些常用的 (比如科学计算和数据处理的scipy/numpy/pandas,机器学习sklearn等)

2 为什么使用 Anaconda ?

就因为 Anaconda 包含python的集成环境和工具以及常用的包,所以下载一键安装后就可以直接使用,跳过了环境配置、编辑器下载、包的下载等步骤,减少安装配置的时间成本!

3 安装 Anaconda

3.1 下载 Anaconda

官网地址:https://www.anaconda.com

官网的下载一般都会非常慢,可以使用镜像地址:Anaconda installer archive 或者清华镜像下载

进入官网地址,点击右上角的下载按钮,下载软件

在这里插入图片描述

3.2 安装Anaconda

双击下载exe文件,进入安装环节

一直点击next,如果想修改文件目录就修改一下,注意要d点击 加入环境变量(Advanced options)

在这里插入图片描述

点击 install,等待安装完毕!

3.3 使用Anaconda

在这里插入图片描述

查看是否安装完成,主要包含这几种工具:

  • Anaconda Navigator 是主程序,打开后就是Anaconda的界面,可以从里面启动其他工具或安装包
  • Anoconda Powershell Prompt 和 Anaconda Prompt 其实就是Anaconda版的命令行窗口,可以进行pip install 、conda install 等包的安装或者进入python交互界面
  • Jupyter Notebook 一种以网页形式打开,并且可以在网页中编写和运行代码的应用程序(我们现在的文件就是一个notebook)
  • Spyder 就是python的一个集成开发环境(IDE),特点是模仿了MATLAB的工作空间,可以直接对数组进行操作
    在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
    安装完成后就可以使用了,一些配置项(环境变量的设置)在Anaconda安装的时候已经自动设置好了,现在只需要打开编辑器或者进入交互界面就可以使用了

二、开始使用

1 Python 的打开方式

交互界面

点击打开 Anoconda Powershell Prompt 或 Anaconda或者启动windows自带的命令行窗口,输入 __python__即可进入python的交互界面

在这里插入图片描述

编辑器

真实情况下很少在“黑窗”里写代码进行交互,更多是在编辑器中进行交互调试,比如打开jupyter notebook或者spyder进行编辑和交互调试

在这里插入图片描述

2 编辑器的选择

  • 文本编辑器:编写普通文字的软件,与文档编辑器(word之类)不同的它主要用于编写和打开文本文件(CSV文件、各种语言的代码文件)
  • IDE:Integrated Development Environment 集成开发环境,是提供了程序开发所需要的环境的软件,文本编辑器就是它其中一项功能,其他功能包括编译、调试、用户图形界面等

常见的文本编辑器有记事本、notebook++、UE、sublime等,常见的用于python的IDE有pycharm、spyder等

2.1 Pycharm

Pycharm 带有一整套可以提升python开发效率的工具,包括语法高亮、自动补全代码、调试、代码跳转等,适合做一些项目性质的开发,比如web开发,以一个项目为单位,可以同时编写html、css、js、py并进行调试

在这里插入图片描述

2.2 Jupyter notebook

Jupyter notebook 是一个交互式笔记本,可以编写代码、数学方程式、数据可视化、markdown等并且混用,支持多种编程语言(python、R、matlab等),现在很多的资料都是以jupyter notebook格式传播的

点击打开jupyter notebook 或者再cmd中输入 jupyter notebook 都可以打开软件

2.3 Spyder

Spyder 是一款简单的IDE,不仅有matlab般的工作空间可以对数据变量进行操作,也可以如命令行一般进行交互操作

对于数据分析使用jupyter notebook或者spyder就足够了,如果需要增加一些文档或数学公式等说明建议使用jupyter notebook,如果是需要模块化运行的建议使用spyder

三、Jupyter notebook 的使用

在jupyter notebook和spyder 中有很多方便使用的快捷方法,简称魔术方法( 在spyder的交互中也同样可以使用)

1 高效使用帮助

无论是什么软件或者编程语言,好的“帮助”可以帮助使用者快速了解相关用法和内容,减少学习成本,提升使用效率

1.1 Python 的使用帮助

1.2 Jupyter notebook 的使用帮助

jupyter notebook 快捷键的帮助:ESC+H 就可显示出快捷键查看快捷键的使用方式和功能

jupyter notebook 魔术方法的帮助:%magic 列出所有的魔术方法和详细说明, %lsmagic 列出所有的魔术方法名称

%lsmagic
    Available line magics:
    %alias  %alias_magic  %autoawait  %autocall  %automagic  %autosave  %bookmark  %cd  %clear  %cls  %colors  %conda  %config  %connect_info  %copy  %ddir  %debug  %dhist  %dirs  %doctest_mode  %echo  %ed  %edit  %env  %gui  %hist  %history  %killbgscripts  %ldir  %less  %load  %load_ext  %loadpy  %logoff  %logon  %logstart  %logstate  %logstop  %ls  %lsmagic  %macro  %magic  %matplotlib  %mkdir  %more  %notebook  %page  %pastebin  %pdb  %pdef  %pdoc  %pfile  %pinfo  %pinfo2  %pip  %popd  %pprint  %precision  %prun  %psearch  %psource  %pushd  %pwd  %pycat  %pylab  %qtconsole  %quickref  %recall  %rehashx  %reload_ext  %ren  %rep  %rerun  %reset  %reset_selective  %rmdir  %run  %save  %sc  %set_env  %store  %sx  %system  %tb  %time  %timeit  %unalias  %unload_ext  %who  %who_ls  %whos  %xdel  %xmode

    Available cell magics:
    %%!  %%HTML  %%SVG  %%bash  %%capture  %%cmd  %%debug  %%file  %%html  %%javascript  %%js  %%latex  %%markdown  %%perl  %%prun  %%pypy  %%python  %%python2  %%python3  %%ruby  %%script  %%sh  %%svg  %%sx  %%system  %%time  %%timeit  %%writefile
    
    Automagic is ON, % prefix IS NOT needed for line magics.

2 Markdown

jupyter notebook 中Cell有两种:python和markdown

2.1 Markdown 编辑文档

# 标题1
## 标题2
### 标题3
__加粗__
> 引用
- 列表
`print("这是一段Python代码)`
[这是一个链接](www.baidu.com)

|  表头   | 表头  |
|  ----  | ----  |
| 单元格  | 单元格 |
| 单元格  | 单元格 |

2.2 Markdown 中的 LaTex

LaTex 的实现原理跟HTML等其他语言的嵌入类似,Notebook中的Markdown格式解释器中内置了LaTex渲染器,可以将内容进行渲染并达到效果

概率密度函数

f ( x ) = 1 δ 2 π e − ( x − μ ) 2 2 δ 2 f(x) = \frac{1} { \delta \sqrt{2 \pi}} e^ {-\frac{(x-\mu) ^2}{2 \delta ^2}} f(x)=δ2π 1e2δ2(xμ)2

希腊字母
希腊字母小写/大写LaTeX形式希腊字母小写/大写LaTeX形式
α A\alpha Aμ N\mu N
β B\beta Bξ Ξ\xi \Xi
γ Γ\gamma \Gammao Oo O
δ Δ\delta \ Deltaπ Π\pi \Pi
ϵ ε E\epsilon \varepsilon Eρ ϱ P\rho \varrho P
ζ Z\zeta Zσ Σ\sigma \Sigma
η H\eta Hτ T\tau T
θ ϑ Θ\theta \vartheta \Thetaυ Υ\upsilon \Upsilon
ι I\iota Iϕ φ Φ\phi \varphi \Phi
κ K\kappa Kχ X\chi X
λ Λ\lambda \Lambdaψ Ψ\psi \Psi
矩阵

A m , n = ( a 1 , 1 a 1 , 2 ⋯ a 1 , n a 2 , 1 a 2 , 2 ⋯ a 2 , n ⋮ ⋮ ⋱ ⋮ a m , 1 a m , 2 ⋯ a m , n ) A_{m,n} = \begin{pmatrix} a_{1,1} & a_{1,2} & \cdots & a_{1,n} \\ a_{2,1} & a_{2,2} & \cdots & a_{2,n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m,1} & a_{m,2} & \cdots & a_{m,n} \end{pmatrix} Am,n=a1,1a2,1am,1a1,2a2,2am,2a1,na2,nam,n

具体使用是在Markdown中使用$开头和结尾来包括需要渲染的内容

3 魔术方法的使用

3.1 执行效率对比

%timeit [i for i in range(1000)]
35.4 µs ± 969 ns per loop (mean ± std. dev. of 7 runs, 10000 loops each)
%%timeit
[i for i in range(1000)]
36.4 µs ± 1.51 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each)

3.2 其他语言的嵌入使用

%%html
<div>
    <p> 这是一个网页</p>
    <strong>下面是一个表格</strong>
    <table>
    <tr>
        <th>表头1</th>
        <th>表头2</th>
    </tr>
    <tr>
        <td>11</td>
        <td>125</td>
    </tr>
</div>
%%html
<table>
<tr>
<th>Header 1</th>
<th>Header 2</th>
</tr>
<tr>
<td>row 1, cell 1</td>
<td>row 1, cell 2</td>
</tr>
<tr>
<td>row 2, cell 1</td>
<td>row 2, cell 2</td>
</tr>
</table>
<marquee style='width: 100%; color: red;' onMouseOut="this.start()" onMouseOver="this.stop()"><b>到此一游!!!</b></marquee>
<marquee id="affiche" align="left" behavior="scroll" bgcolor="#FF0000" direction="up" height="300" width="200" hspace="50" vspace="20" loop="-1" scrollamount="10" scrolldelay="100" onMouseOut="this.start()" onMouseOver="this.stop()">
我是一个泡泡
</marquee>
%%javascript
alert("这是 javascript 的一个弹窗")
%%SVG
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 450 400" width="500" height="200">
  <rect x="80" y="60" width="250" height="250" rx="20" style="fill:red; stroke:black; fill-opacity:0.7" />
  <rect x="280" y="110" width="250" height="250" rx="40" style="fill:blue; stroke:black; fill-opacity:0.5;" />
</svg>

3.3 系统命令执行

%%system
dir
[' 驱动器 D 中的卷是 软件安装',
 ' 卷的序列号是 6642-B972',
 '',
省略
 '              17 个文件      2,446,854 字节',
 '               3 个目录 49,850,212,352 可用字节']
%%system
ipconfig
['',
 'Windows IP 配置',
 '',
 '',
 '以太网适配器 以太网 2:',
 '',
 '   媒体状态  . . . . . . . . . . . . : 媒体已断开连接',
 '   连接特定的 DNS 后缀 . . . . . . . : ',
 '',
 '以太网适配器 以太网:',
 '',
 '   媒体状态  . . . . . . . . . . . . : 媒体已断开连接',
 '   连接特定的 DNS 后缀 . . . . . . . : ',
 '',
 '以太网适配器 以太网 3:',
 '',
 '   媒体状态  . . . . . . . . . . . . : 媒体已断开连接',
 '   连接特定的 DNS 后缀 . . . . . . . : ',
 '',
 '以太网适配器 以太网 4:',
 '',
 '   媒体状态  . . . . . . . . . . . . : 媒体已断开连接',
 '   连接特定的 DNS 后缀 . . . . . . . : ',
 '',
 '无线局域网适配器 本地连接* 2:',
 '',
 '   媒体状态  . . . . . . . . . . . . : 媒体已断开连接',
 '   连接特定的 DNS 后缀 . . . . . . . : ',
 '',
 '无线局域网适配器 WLAN:',
省略
 '   媒体状态  . . . . . . . . . . . . : 媒体已断开连接',
 '   连接特定的 DNS 后缀 . . . . . . . : ']
!ipconfig
Windows IP 配置


以太网适配器 以太网 2:

   媒体状态  . . . . . . . . . . . . : 媒体已断开连接
   连接特定的 DNS 后缀 . . . . . . . : 

以太网适配器 以太网:

   媒体状态  . . . . . . . . . . . . : 媒体已断开连接
   连接特定的 DNS 后缀 . . . . . . . : 

以太网适配器 以太网 3:

   媒体状态  . . . . . . . . . . . . : 媒体已断开连接
   连接特定的 DNS 后缀 . . . . . . . : 

以太网适配器 以太网 4:

   媒体状态  . . . . . . . . . . . . : 媒体已断开连接
   连接特定的 DNS 后缀 . . . . . . . : 

无线局域网适配器 本地连接* 2:

   媒体状态  . . . . . . . . . . . . : 媒体已断开连接
   连接特定的 DNS 后缀 . . . . . . . : 

无线局域网适配器 WLAN:

 省略

   媒体状态  . . . . . . . . . . . . : 媒体已断开连接
   连接特定的 DNS 后缀 . . . . . . . : 

3.4 数据可视化

%matplotlib inline
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
x = [i for i in range(100)]
y = 100+ np.random.randn(100)
plt.plot(x, y)
plt.fill_between(x, y, np.trunc(y.min()), facecolor='g', alpha=0.6)

3.5 新建文件

%%writefile test.txt
这是一个测试文件
第二行
%%writefile test.py
while True:
    user = input("用户名:")
    pd = input("密码:")
    print("请确认您输入的用户名:", user)
    yn = input("请确认(y|n):")
    if yn == 'y':
        break
print("您此次登录的用户名是:", user)
!python test.py
%%system
python test.py
['用户名:Traceback (most recent call last):',
 '  File "test.py", line 2, in <module>',
 '    user = input("用户名:")',
 'EOFError: EOF when reading a line']
%run test.py
用户名:wfxu
密码:`11
请确认您输入的用户名: wfxu
请确认(y|n):y
您此次登录的用户名是: wfxu

只有 %run 可以运行这个py文件,有可能notebook渲染器不支持input函数

%%system?

4 功能扩展

Jupyter notebook功能扩展Nbextensions

python -m pip install jupyter_contrib_nbextensions
jupyter contrib nbextension install --user --skip-running-check

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值