01.配置环境

工欲善其事,必先利其器

在开始工作之前,首先准备了解一下基本的知识点

只有把基础打好,才能够冲的更远

环境搭建

在Windows下安装Python

安装python有两种方式:

  • 一种通过Python安装包安装

  • 另一种通过anaconda安装

接下来介绍如何安装两种方式的安装方法:

Python安装包安装

  • 官方网站:https://www.python.org/

首先进入官网

img

然后点击Downloads > Windows,会出现如何界面

img

然后点击 Latest Python 3 Release - Python 3.7.0,往下滑动,出现以下界面

image-20200909234112012

这里有很多版本的,在windows中安装可以选择Windows x86-64 executable installerWindows x86 executable installer 分别是对应64位的windows和32位的windows,选择适合的版本进行下载,下载完后,双击安装python.exe,出现以下界面

img

第一个是默认安装,第二个是用户自定义安装,最下方的复选框,勾选后,表示python路径自动添加到环境变量中

本文选择用户自定义安装

img
img

然后点击安装,安装完后,出现successful,就表示安装成功了

现在测试,是否安装成功了,按下win+r,并输入cmd,进入控制平台,在命令框下输入python

img

出现以上类似内容,就证明安装成功了

如果出现以下提示

img

代表环境路径,没有配置好,需要将python.exe所在的python路径添加到环境变量中,

img

首先右键点击此电脑,选中属性,出现如下界面

img

选中高级系统设置,然后可以看到有环境变量的选项,点击进去,出现如下视图

img

选中系统变量下的Path选项,然后,点击编辑,然后找到python.exe的所在路径

img

粘贴复制到刚才编辑变量处,点击新建

img

然后点击确定,就可以了

有可能自己的电脑下装了很多不同版本的python,为了区别开来,可以在python目录,将python.exe,复制粘贴并命名为新的名字,作为原来的python.exe的代替

img

测试一下,在命令框中输入python36

img

另外还需要将python下的Scripts目录添加到环境变量中

img

Anaconda安装

  • 官方网站:https://www.anaconda.com/download/

首先进入官网

img

电脑是64位的,安装64-Bit Graphical Installer (631 MB)

电脑是32位的,安装32-Bit Graphical Installer (506 MB)

温馨提示

建议使用anaconda

工欲善其事,必先利其器

安装Pycharm

进入官网

img

有两个版本,professional是专业版,需要进行收费,community是社区版,是免费的

为了自己更好的进行学习,选用professional版本的

下载过程~

注意安装路径尽量不使用带有中文或空格的目录,这样在之后的使用过程中减少一些莫名的错误

安装完成后,不要着急打开,首先需要进行破解,不然无法使用

img

这里采用补丁进行破解

首先点击

image-20200909073511834

进行使用,然后打开应用

img

之后下载 jetbrains-agent-latest.zip,然后不用解压!不用解压!直接拖到安装目录,再次启动就自动安装了!

pycharm 基本用法

新建项目

File > New Project > Pure Python

img

最后点击create即可,如下图所示

img

然后右键点中项目,然后选中New > Python File

image-20200909234144187

运行

img

对配置pycharm,首先进入设置中进行配置

img

编码设置

为了避免编码带来的问题,对文件编码进行设置

img

环境配置

当有多个版本的时候,可以通过Project Interpreter 方便的进行管理

image-20200909234206816

有一个下拉选项框,可以手动选中需要的python版本,也可以删除不需要的python版本

有一个"+",可以方便的添加python模块,下面的"-",与"+"相反

字体

img

Font:字体

Size:字体大小

Pycharm快捷键

作用

ctrl + shift + f10

运行

ctrl + /

注释

双击 shift 键

全局查找

ctrl + P

查看函数参数

ctrl + space

基本的代码完成

shift + f9

调试

shift + enter

另起一行

ctrl + D

复制

调试

img

或者

img

简单介绍一下调试栏的几个重要的按钮作用:

img

Resume Program:断点调试后,点击按钮,继续执行程序;

img

Step Over:在单步执行时,在函数内遇到子函数时不会进入子函数内单步执行,而是将子函数整个执行完再停止,也就是把子函数整个作为一步。有一点,经过我们简单的调试,在不存在子函数的情况下是和Step Into效果一样的(简而言之,越过子函数,但子函数会执行);

img

Step Into:单步执行,遇到子函数就进入并且继续单步执行(简而言之,进入子函数);

img

Step Out: 当单步执行到子函数内时,用step out就可以执行完子函数余下部分,并返回到上一层函数。

设置Pycharm背景皮肤

点击Background Image

img

然后选择图片,便可以了

img

安装 Jupyter

什么是Jupyter?

安装Jupyter

或者直接

运行

安装完成后,运行Jupyter notebook,在命令框下,输入如下命令即可:

在浏览器中输入 localhost:8888 会出现如下界面

img

温馨提示:

jupyrt notebook 应该需要创建一个文件夹,然后在当前文件夹目录下运行命令

jupyter notebook常用命令

  • 帮助

  • 启动

默认端口启动

之后在Jupyter Notebook的所有操作,都请保持终端不要关闭,因为一旦关闭终端,就会断开与本地服务器的链接,将无法在Jupyter Notebook中进行其他操作

指定端口启动

启动服务器但不打开浏览器

以root身份启动

生成jupyter的配置文件

修改jupyter的配置文件

将293行 #c.NotebookApp.token = '<generated>'修改为c.NotebookApp.token = 'password',则密码就改为password

修改密码

Markdown用法

img

常用魔法函数

魔法函数
作用

%%writefile

调用外部python脚本

%run

调用外部python脚本

%timeit

测试单行语句的执行时间

%%timeit

测试整个单元中代码的执行时间

% matplotlib inline

显示matplotlib包生成的图形

%%writefile

写入文件

%pdb

调试程序

%pwd

查看当前工作目录

%ls

查看目录文件列表

%reset

清除全部变量

%who

查看所有全局变量的名称,若给定类型参数,只返回该类型的变量 列表

%whos

显示所有的全局变量名称、类型、值/信息

%xmode Plain

设置为当异常发生时只展示简单的异常信息

%xmode Verbose

设置为当异常发生时展示详细的异常信息

%debug

bug调试,输入quit退出调试

%env

列出全部环境变量

jupyter如何生成PDF文件

相关资源下载

  • Pandoc:http://so.csdn.net/so/search/s.do?q=pandoc&t=doc&o=&s=all&l=null

  • Miktex:https://miktex.org/

下载相关资源即可生成pdf文件

中文乱码处理

  • ipython nbconvert --to latex xxx.ipynb

  • 修改tex 或者 修改E:\Anaconda3\Lib\site-packages\nbconvert\templates\latex\article.tplx

    image-20200909074942330

  • 编译tex,生成pdf

数学公式

  • 约定

    • 使用{}包括一个表达式当成整体

    • 需要使用'$$' 、 '$$'一对将数学公式包括起来

  • 示例:

    如下: y2xy^{2x}

上标

示例:

如下: x2x^2

ex2xex^{2x}

下标

  • 第一种情况 示例:

    如下: xix_i

  • 第二种情况 示例:

    如下: 10C5_{10}C_5

  • 第三种情况 示例:

    如下: argmaxk\underset{k}{argmax}

平方根

示例:

如下: 2π\sqrt{2\pi}

符号

  • 希腊字母

    如下: α,β,γ\alpha, \beta, \gamma

  • 大写希腊字母

    如下: Φ,Λ,Γ\Phi, \Lambda, \Gamma

  • 乘、正负、并集、卷积符号

    如下: ×,±,,\times, \pm, \cup, \oplus

  • 三角函数

    如下: sin,cosh,arctan\sin, \cosh, \arctan

  • 关系运算

    如下: ,,,\leq, \geq, \approx, \neq

  • 3点符号

    如下: ,,\cdots, \ldots, \ddots

  • 其他的变量符

    如下: ,,\infty, \nabla, \partial

口音

  • 在符号上面加个帽子: \hat x,显示为

x^\hat x

widehatabswidehat{abs}

  • 为了显示平均数,通常需要在变量上面添加一条线,通过\bar x,显示为

    xˉ\bar x

    如果是多个字符,可以使用 \overline{abs},显示为 abs\overline{abs}

  • 导数通过点表示,如 \dot x 和 \ddot x ,显示为 x˙x¨\dot x 和 \ddot x

  • 箭头为 \vec{x}, \overrightarrow{AB} ,显示为 x,AB\vec{x}, \overrightarrow{AB}

括号

  • 圆括号

    如下: (dxdy)13(\frac{dx}{dy})^{\frac{1}{3}}

  • 拉伸括号,使用 \left 和 \right

    如下: z=(dxdy)1/3z=\left(\frac{dx}{dy}\right)^{1/3}

特殊的括号

  • 直线 | 或写为 \vert ,\mid 显示效果和 \vert 非常相似,但 \mid 宽度比 \vert 大

  • 尖括号,例如$$ {\langle} {\phi} \mid {\psi} {\rangle} $$ 显示为 ϕψ{\langle} {\phi} \mid {\psi} {\rangle}

  • 矩阵括号,如 $$\left[\begin{matrix}a & b \cr c & d\end{matrix}\right]$$ 显示为 [abcd]\left[\begin{matrix}a & b \cr c & d\end{matrix}\right] 或者是:$$\left\lgroup\begin{matrix}a & b \cr c & d\end{matrix}\right\rgroup$$ abcd\left\lgroup\begin{matrix}a & b \cr c & d\end{matrix}\right\rgroup

字体及其选项

  • 非斜体罗马文本

    如下: abcdefghijklmn123456或者abcdefghijklmn123456\textrm{abcdefghijklmn123456} 或者 \rm{abcdefghijklmn123456}

  • 斜体字母

    如下: abcdefghijklmn123456\mathit{abcdefghijklmn123456}

  • Sans serif 字体

    如下: abcdefghijklmn123456\mathsf{abcdefghijklmn123456}

  • Typerwriter 字体

    如下: abcdefghijklmn123456\mathtt{abcdefghijklmn123456}

  • Calligraphic 字体

    如下: abcdefghijklmn123456\mathcal{abcdefghijklmn123456}

  • Blackborad bold 字体

    如下: abcdefghijklmn123456\mathbb{abcdefghijklmn123456}

  • Boldsymbol 字体加粗

    如下: Ax=λv\boldsymbol{A\cdot x}=\lambda\cdot v

空格

  • 在LaTeX中,符号之间的空格会被自动移除,所以不能直接写空格

    如下: f(x)dx\int f(x) dx

  • 函数和 dx 之间没有空格,你能通过 , 或 : 或 ;添加空格,其空格宽度分别为从小到大

    如下: f(x);dx\int f(x) ; dx

转义字符

等式对齐

  • 通过 \ 断开两个或多个等式,可实现等式中部对齐

    如下: a1=b1+c1a2=b2+c2+d2a3=b3+c3a_1=b_1+c_1 \\ a_2=b_2+c_2+d_2 \\ a_3=b_3+c_3

  • 左对齐

    如下:

  • 对方程进行编号,使用\tag

    如下:

分段函数

  • 使用符号函数sign

    如下: sign(x)={1,x>00,x=01,x<0sign(x)=\begin{cases} 1,&x>0 \\ 0,&x=0 \cr -1,&x<0 \end{cases}

总结

  • 命令

    1. 指数和下标可以用^和_后,跟相应字符实现。例如``$a^3$ , $a_3$`表示

      $a^3$ , $a_3$

    2. 平方根的为\sqrt, n次方根为\sqrt[n]。例如 $\sqrt{a} \sqrt[3]{a}$

      $\sqrt{a} 、 \sqrt[3]{a}$

    3. 命令 \overline 和 \underline 表示表达式上的上、下坊给出以水平大括号。例如:$\overline{m+n}$ 表示

      $\overline{m+n}$

      $\underline{m+n}$ 表示

      $\underline{m+n}$

    4. 命令 \overbrace 和 \underbrace 在表达式的上、下方给出一水平的大括号,例如 $\underbrace{a+b+\cdots+j}_{10}$表示

      $\underbrace{a+b+\cdots+j}_{10}$

    5. 向量(Vector)通常用于上方有小箭头的变量表示,可以有\vec得到,例如 $\vec a$表示

      $\vec a$

      $$\overrightarrow{AB}$ 、\overleftarrow{AB}$ 表示

      $\overrightarrow{AB}$ 、$\overleftarrow{AB}$

    6. 分数(fraction) 使用 \frac{...}{...} 排版,一般来说,1/2 这种形式更受欢迎,以为对于少量的分式,它看起来更好些。 $\frac{-b\pm\sqrt{b^2-4ac}}{2a}$ 表示

      $\frac{-b\pm\sqrt{b^2-4ac}}{2a}$

    7. 积分运算符(integral operator) 用 \int 来生成,例如$\int_{0}^{\pi}{\tan x}$表示

      $\int_{0}^{\pi}{\tan x}$

    8. 求和运算符(sum operator) 用 \sum 来生成,例如 $\sum_{i=0}^{n}{i}$表示

      $\sum_{i=0}^{n}{i}$

    9. 乘积运算符(product operator) 用 \prod 生成,例如 $\prod_{i=1}^{9}{i}$ 表示

      $\sum_{i=0}^{n}{i}$

数学符号表

image-20200909075045534

如何在jupyter中集成MATLAB

  • 先安装matlab

  • 然后安装anaconda

  • 切换到E:\MATLAB\R2018a\extern\engines\python

  • pip install matlab_kernel

  • 测试

img

虚拟环境

首先来讲下为什么要安装搭建虚拟环境?

  • 搭建独立的python运行环境,防止与其他版本的python产生冲突

  • 有助于包管理和避免版本的冲突

  • 卸载方便

接下来开始安装虚拟环境

安装virtualenv

创建项目文件

指定版本创建

安装虚拟环境

在自定义的目录下安装虚拟环境,输入 virtualenv 虚拟环境名

会在当前目录创建一个django 文件,切换到当前目录下Scripts

img

启动虚拟环境

输入如下命令进行命令

如:

在前面会出现,自定义的虚拟环境的名字

退出虚拟环境

输入如下命令

如:

安装virtualenvwrapper

为了更方便使用virtualenv,借助 virtualenvwrapper 来安装虚拟环境

定义默认的安装路径

通过 计算机 > 属性 > 高级系统设置 > 环境变量

然后在系统变量中新建"变量名":WORKON_HOME,变量值:"自定义的路径"。

创建环境变量命令:

如:

列出所有虚拟环境命令:

如:

激活虚拟环境命令:

如:

进入虚拟环境目录命令:

如:

列出site-packages目录的所有软件包 命令

如:

退出虚拟环境命令:

如:

删除虚拟环境命令:

如:

重建Python环境

冻结环境

所谓 冻结(freeze) 环境,就是将当前环境的软件包等固定下来:

重建环境

重建(rebuild) 环境就是在部署的时候,在生产环境安装好对应版本的软件包,不要出现版本兼容等问题:

交互式解释器

当启动python后,会有下面类似的提示

现在来输入第一个程序

当按下回车后,会得到如下输出

数据

在python编程中,万物皆对象,实际上数据类型是类,而变量是这些类的实例化对象

数据类型

  • 数字:Number

    • 整型:int

    • 浮点型:float

    • 复数:complex

    • 布尔值:bool

  • 字符串:String

    • 字符串是 Unicode 字符的序列,可以使用单引号 '' 和双引号 "" 来表示字符串,而多行的字符串可以使用 ''' 和 """ 来表示

  • 列表:List

  • 元组:Tuple

  • 集合:Set

  • 字典:Dictionary

在标准数据类型中:

  • 不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);

  • 可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。

在后面会慢慢讲解的,现在大致了解一下

现在来补充一点知识

多个变量赋值

上面的实例,创建了一个整型对象,值为1,从后向前进行赋值,而且三个变量都指向通过一个内存地址

为多个对象赋值

isinstance()函数:判断一个对象是否是一个已知的类型

创建对象

删除对象

通过使用del语句删除对象引用

可以删除多个对象

Python数据类型转换

有时候,需要对数据内置的类型进行转换,数据类型的转换,只需要将数据类型作为函数名即可

以下几个内置的函数可以执行数据类型之间的转换。这些函数返回一个新的对象,表示转换的值

函数
描述

int(x [,base])

将x转换为一个整数

float(x)

将x转换到一个浮点数

complex(real [,imag])

创建一个复数

str(x)

将对象 x 转换为字符串

repr(x)

将对象 x 转换为表达式字符串

eval(str)

用来计算在字符串中的有效Python表达式,并返回一个对象

tuple(s)

将序列 s 转换为一个元组

list(s)

将序列 s 转换为一个列表

set(s)

转换为可变集合

dict(d)

创建一个字典。d 必须是一个序列 (key,value)元组。

frozenset(s)

转换为不可变集合

chr(x)

将一个整数转换为一个字符

ord(x)

将一个字符转换为它的整数值

hex(x)

将一个整数转换为一个十六进制字符串

oct(x)

将一个整数转换为一个八进制字符串

输入输出

打印输出

首先来定义一个变量

后面通过几种不同的方式,打印这个变量

第一种

直接使用print()打印a变量

第二种

使用%输出a变量

解释:

%s:占位符,为字符串占据一个位置

第三种

使用format()方法,格式化输出

或者

也可以通过关键字参数输出

注意:括号中的0,代表format中参数的顺序

提示

如何输出小数点位数?

比如定义一个a=1.234,输出保留一位

可以通过%.nf实现,n代表的是保留的位数

占位符

百分号

语法:

  • name 可选,用于选择指定的key

  • width 可选,占有宽度

  • .precision 可选,小数点后保留的位数

  • flags 可选,可供选择的值有:

    • + 右对齐;正数前加正好,负数前加负号;

    • - 左对齐;正数前无符号,负数前加负号;

    • 空格 右对齐;正数前加空格,负数前加负号;

    • 0 右对齐;正数前无符号,负数前加负号;用0填充空白处

  • typecode 必选

实例:

format

语法:

  • fill 【可选】空白处填充的字符

  • align 【可选】对齐方式(需配合width使用)

    • <,内容左对齐

    • >,内容右对齐(默认)

    • =,内容右对齐,将符号放置在填充字符的左侧,且只对数字类型有效。 即使:符号+填充物+数字

    • ^,内容居中

  • sign:【可选】有无符号数字

    • +,正号加正,负号加负;

    • -,正号不变,负号加负;

    • 空格 ,正号空格,负号加负;

  • # :【可选】对于二进制、八进制、十六进制,如果加上#,会显示 0b/0o/0x,否则不显示

  • ,:【可选】为数字添加分隔符,用于显示数字的

    千位分隔符,如:1,000,000

  • width :【可选】格式化位所占宽度

  • .precision :【可选】小数位保留精度

  • type:【可选】格式化类型

    • 传入” 字符串类型 “的参数

      • s,格式化字符串类型数据

      • 空白,未指定类型,则默认是None,同s

    • 传入“ 整数类型 ”的参数

      • b,将10进制整数自动转换成2进制表示然后格式化

      • c,将10进制整数自动转换为其对应的unicode字符

      • d,十进制整数

      • o,将10进制整数自动转换成8进制表示然后格式化;

      • x,将10进制整数自动转换成16进制表示然后格式化(小写x)

      • X,将10进制整数自动转换成16进制表示然后格式化(大写X)

    • 传入“ 浮点型或小数类型 ”的参数

      • e, 转换为科学计数法(小写e)表示,然后格式化;

      • E, 转换为科学计数法(大写E)表示,然后格式化;

      • f , 转换为浮点型(默认小数点后保留6位)表示,然后格式化;

      • F, 转换为浮点型(默认小数点后保留6位)表示,然后格式化;

      • g, 自动在e和f中切换

      • G, 自动在E和F中切换

      • %,显示百分比(默认显示小数点后6位)

  • end:以什么字符作为结尾,默认

  • sep:以什么字符作为间隔符,默认为空格

读取键盘输入

讲完了输出,现在开始讲解如何获取输入

使用input函数就可以获取到输入的值

示例:从键盘上获取"Helloworld"字符串

在input()函数中可以写入一串字符串

注释

单行注释符

井号(#)在python中用作为单行注释符,在代码中使用#后,右边的任何数据都会被忽略掉

多行注释符

多行注释符用三引号进行注释

中文注释方法

在python编写代码的时候,避免不了会出现或是用到中文,这时候你需要在文件开头加上中文注释

在python3中,编码默认utf-8

命名和保留字

应该避免的名称

以下的命名应该尽量避免:

  • 单字符名称, 除了计数器和迭代器

  • 包/模块名中的连字符(-)

  • 双下划线开头并结尾的名称(Python保留, 例如__init__)

  • 应避免使用小写字母l(L),大写字母O(o)或I(i)单独作为一个变量的名称,以区分数字1和0

  • 当参数名称和Python保留字冲突,可在最后添加一个下划线,而不是使用缩写或自造的词

命名约定

  • 模块

    • 模块尽量使用小写命名,首字母保持小写,尽量不要用下划线(除非多个单词,且数量不多的情况)

  • 类名

    • 类名使用驼峰(CamelCase)命名风格,首字母大写,私有类可用一个下划线开头

  • 函数

    • 函数名一律小写,如有多个单词,用下划线隔开

    • 私有函数在函数前加一个下划线_

  • 变量

    • 变量名尽量小写, 如有多个单词,用下划线隔开

    • 常量采用全大写,如有多个单词,使用下划线隔开

保留字

打包程序

安装

检测是否安装成功

命令

  • pyinstaller : 打包可执行文件的主要命令,详细用法下面会介绍。

  • pyi-archive_viewer : 查看可执行包里面的文件列表。

  • pyi-bindepend : 查看可执行文件依赖的动态库(.so或.dll文件)

  • ...

安装

最后更新于

这有帮助吗?