为了跟上时代的步伐,利用业余时间学习python。
1、python方便实用的一大优点就是第三方库众多,使用者可以不必从底层做起,重复造轮子。由于Anaconda集成了好多python第三方的库,对于初学者来说节省大量安装包的时间(有些包一直提示安装失败是会崩溃的),所以使用Anaconda来进行python语言的学习是初学者的最佳选择,下面来介绍下anaconda的安装。
a、在Anaconda官网 (https://www.anaconda.com/download/) 直接根据电脑系统类型进行下载不同的版本:Windows、macOS、Linux。
b、双击安装.pkg文件,可以自行选择安装位置,也可以选择默认位置安装,我是采用默认位置安装的,安装完成后输入 sudo vi ~/.bash_profile,检查环境变量是否添加成功,如下图所示:
如果环境变量中没有,那么要手动添加
export PATH="/Users/anaconda3/bin:$PATH"(这里要填写自己的路径哦)
刷新环境变量:
source ~/.bash_profile
再查看 conda list ok啦~
c、打开安装好的Anaconda,界面如下图:
我最常用的是Spyder与Jupyter notebook,前者主要进行编写程序是使用,后者学习时使用。
Spyder:左边用来编辑脚本,碰到需要查找功能时右下角的ipython可以很方便的使用。
Jupyter notebook:是一种网页格式的编辑器,下图为创建新的代码。
用jupyter做笔记很适合初学者,每个模块可以独立的执行,也可以放在一起执行。
下面介绍常用的操作命令:
1.查看环境管理的全部命令帮助:
conda env -h
2.查看当前系统下的环境:
conda info -e
3.创建环境:
conda create env_name (env_name)是环境名称,这条命令将会给Biopython创建一个新的环境,位置在Anaconda安装文件的/envs/snowflakes
创建指定python版本的环境:
conda create env_name python=3.6 (3.6为python的版本,根据自己的需要更改)
创建包含某些包的环境:
conda create env_name numpy scipy
激活(进入)某个环境:
新的开发环境会被默认安装在conda目录下envs文件目录下,你可以指定一个其他的路径;
如果没有指定安装python的版本,conda会安装最初安装conda时所装的那个版本的python。
mac:
source activate env_name
退出某个环境:
deactivate env_name
复制某个环境:
conda create new_env_name old_env_name
删除某个环境:
conda remove env_name
查看已安装的包:
conda list
查看指定环境下的包:
conda list -n xxx
查找包:
conda search xxx
更新包:
conda update xxx
安装包:
conda install xxx
pip install xxx
指定的安装环境:
conda install -n env_name xxx
卸载包:
conda remove xxx
升级当前版本的conda:
conda update conda
2、python解释器的安装。
a、2018款mbp没有自带python2,所以可以选择安装2.x与3.x。(官网:https://www.python.org/downloads/mac-osx/)
下载后点击安装,然后在启动台找到IDLE打开。(新款mbp会自动配置好环境的,不用人工再进行配置)
选择newfile新建一个IDLE。
3、python初体验:
a、print语句
print语句是将执行的结果打印输出,可以打印字符串、列表、字典、数字、元组、集合以及变量等各种类型,并且在debug时应用较多,当程序出现问题时,可以分段进行打印,查找bug位置,下图是一些例子:
b、input语句
input 语句为人机交互时使用,即提示用户输入一个数据,返回为字符串格式。可以结合int、set、float等进行格式转换.还可以利用eval()函数去掉两边等引号。
4、python基础
a、python变量特性以及命名规则
变量 , 其实就是计算机内存中的一块储存空间 , 用来存储CPU需要使用的数据 ,而这个储存空间需要一个名字 , 这个名字的统称就叫变量 .
例如 :
a = 100
“a” 在这里就是一个变量的名字. 而 “a = 100 " 就是给 “a” 这个变量赋值 . 注意 , 赋值和命名是不一样的 . 在你敲出 “a” 这个字母的时候 , 其实就已经给其命名了 .
而当变量被命名的时候 , 就必须要被赋值 . 因为在内存中 , 内存空间非常宝贵 , 所有不允许有空内存的情况发生 .
变量是可以被重新赋值的 .
例如 :
a = 100
a = ‘abc’
print ( a )
打印的结果是200。
在a=100时,即将a指向存储100的一个内存,当重新给a赋值’abc’时,a重新指向存储’abc’的一个内存,a原先指向的100内存释放,所有在打印a时,即打印a所指向的那块内存’abc’。
变量的命名规则:可以由数字、字母、下划线组成。不能以数字开头,不能与关键字重复。在命名时要注意便于识别,最好用英语命名,可以采用大驼峰法、小驼峰法以及下划线分割单词等方法。
b、注释方法
对脚本进行注释即可以方便自己检查时使用,也方便团队开发人员,如果没有注释,成千上万行的代码核查起来很不方便,所以要合理运用注释。
python中的注释有单行注释和多行注释,单行注释即在开头用#标注,多行注释可以用三个单引号或者三个双引号来标注。
c、python中”:"的使用
1)在字典中,冒号用来分割键值对,a = {key: value};
2)属于语法的一部分,常常在if、elif、else、等语句后面,定义函数、类时,构成语法等一部分(由于python语法不用括弧,所有利用冒号跟缩进来区分语法块)。
d、dir()和help()函数
dir()函数用来查询当前模块的方法,获得属性列表.dir()对任何对象都起作用。
help()函数,相对于dir()函数,不光有属性,还多了属性介绍。
e、import 使用
可以使用import将一个源文件导入,并可以使用该模块的方法。可以单个模块导入,也可以同时导入多个模块,还可以导入模块的部分方法。
import os 单个模块导入
import time, os, sys, csv 导入多个模块
import numpy as np 使用关键字as可以为模块重命名
from socket import socket 导入socket模块中的socket方法,这种格式用于大型的模块,可以只导入需要的方法即可。
f、pep8介绍
pep8是python的编码规范,比如代码编排、文档编排、空格的使用、注释、文档描述、命名规范以及编码建议等。在写程序时如果都遵循这个规则,很大程度提升了代码的可阅读性。
PEP8中文翻译:http://www.cnblogs.com/ajianbeyourself/p/4377933.html
5、python数值基本知识
a、python中数值类型
python中的数值类型有:整数形(int)、浮点数(float)、复数(complex)以及布尔值(bool)
b、算数运算符
在python中可以运算数学符号,例如加减乘除,整除(地板除),取模值,幂运算等
c、逻辑运算
逻辑运算符or与and
or 或的关系,一个为真则都为真,全部为假则为假
and 与的关系,全部为真则为真,一个为假则为假
d、成员运算符
成员运算符为in与not in,in用来判断是否在后者中,如果在,则为真,not in与in刚好相反。
e、身份运算
身份运算符为is与not is
is 用于判断两个变量的引用地址是否一致,如果一致返回True,不一致返回False
not is与is的用法刚好相反
f、运算符优先级
运算符优先级从高到低依次为:幂运算(**)>按位翻转(一元加减~±)>乘除、取模、取整(* / % //)>加减(±)>右移左移(》《)>按位与(&)>位运算(^ |)>比较运算符(<= < > >=)>等于运算符(>< == !=)>赋值运算符(= %= /= //= -= += *= **=)>身份运算符(is not is)>成员运算符(in not in)>逻辑运算符(not or and)
总结:
通过今天的学习对python有了初步的了解,简单的掌握了:
1、输入与输出语句;
2、变量特性与命名规则;
3、查看模块属性文档的方法;
4、模块导入的用法;
5、pep8的一些规范,记住了一些,还需要经常翻看;
6、python中的数值类型有了简单的了解;
7、对成员运算与身份运算加深了理解;
8、对运算的优先级有了简单的了解。
今后还需加强练习,不足之处很多,希望再接再厉。
文中出现的错误还请大家及时指正,敬谢!!