Python环境配置及基础数据类型
写在最前:
Python的厉害之处就不多说了,在机器学习的技能图谱中,Python属于地基层面。为此,多花些时间,把Python基础打牢固,是为将来的职业路径中走得更远更稳。
该Python基础笔记是七月学员clownfish对机器学习集训营一期中Python部分的整理,共分为四篇,1. Python环境配置及基础数据类型,2. 函数,控制与循环,3.面向对象,4.内置模块(os,文件,正则等)与第三方库(requests等)的应用
Python安装配置—AnaConda集成环境
Conda安装
https://www.anaconda.com/download/
大家根据自己的操作系统,下载安装即可。本笔记在x64平台在进行。
Conda环境管理
为什么要用anaconda管理python的环境及包,因为很方便呀。哈哈~~~~~·
列举环境
conda info --envs
创建环境
conda create -n py27 python=2.7.12
创建一个名为py27的python环境,该环境python的版本为2.7.12
环境切换
- 切换到新环境# linux/Mac下需要使用
source activate env_name - 退出环境,也可以使用
activate root
切回root环境
deactivate env_name
使用环境
查看py27环境下python版本
Py27环境下安装包
移除环境
conda remove -n env_name –all
Conda包管理
activate env_nameconda install packagename
- 安装anaconda发行版中所有的包
conda install anaconda - 为某个环境安装包
conda install -n env_name jupyter - 查看已经安装的package
conda list - 指定查看某环境下安装的package
conda list -n env_name - 查找包
conda search numpy - 更新包
conda update matplotlib
conda update anaconda - 卸载包
conda remove numpy
如何写python
cmd命令行[不推荐]
文本编写,然后python解析该脚本[不推荐]
自带或第三方ide,如pycharm,python自带idle等IDE环境。
python基本操作
操作符operator:
+,-,,/,//% /除法, //除法取整,%除法取余
[注意:在除法上,python2和3这点有区别]
=号(赋值)与==号(比较)
x=x+2 相同 x+=2(简写)
x=x2 相同 x*=2
x=x/2 相同 x/=2
表达式expression:
引用变量,计算并返回一个结果。
指令statement
l Python执行指令,未必会返回一个结果。
l Expression可以被当做 一个statement,但statement一般不是一个expression
l 赋值statement
---------------Python基础数据类型---------------
String字符串
关于字符串的引号
单引与双引在表示字符串时没有区别。但字符串开头结尾必须使用同一种引号。否则报错
如果在字符串中出现了与表示字符串相同的引号,可以用反斜线进行转义。
多行string:
使用\n在string中进行换行, \t是制表符
str='julyedu.com is a \n very "powerful" \n website for \t machine ' learning'
str
print(str)
或者使用三个单引号,把多行内容包裹起来
print('''
julyedu.com is a
very "powerful"
website for machine ' learning
''')
+号:字符串接结(concatenation)
str1='julyedu'
str2='.'
str3='com'
str1+str2+str3
强制类型转换str()
str1+str2+str3+str(666)
强制将666这个整型数字转换为字符串型,以便和其它字符串进行拼接。
format
format函数能帮助处理string与其它数据类型拼接的问题
x=5;y=7.5
'{},{},{}'.format(x,y,x+y)
字符串string的索引Indexing与切片Slicing访问
0代表第一个元素
-1代表字符串最后一个元素
字符串空格处理strip
strip(),lstrip(),rstrip()
拆分字符串split
默认是按空格进行拆分
查找字符串出现位置
find():找到第一个substring出现的索引位置
检查指定字符串,是否存在
替换replace
List列表
可以理解 为一个Array,但它可以包含不同数据类型的对象。表示一连串的数据的集合。
创建
索引与切片访问
与string的索引与切片访问方式非常接近,略过。
这里的索引指不再是一个一个的字符。
超过索引范围的访问报错:
类型转换
l1=list('Julyedu')
l1
查看列表长度
len(l1)
在列表尾部添加元素
在列表特定位置添加元素
insert函数可以指定添加新元素在列表中的位置
names=['Tensorflow','Keras','Torch','Caffe','Julyedu','PyTorch']
names
names.insert(3,'MxNet')
names
返回并弹出
使用pop()函数,弹出列表最右侧的元素。它是由两步操作组成的,先返回列表中最后一元素个值,再从列表中删除这个元素。
统计元素在列表中的个数
逆序排序列表中的元素
reverse()
也可以使用切片的访问进行逆序访问
删除一个元素
可以使用索引指定元素后进行删除,也可以使用切片方式删除元素
Tuple元组
可以认为tuple是只读列表,它有许多操作和list很接近,除了对其进行修改。
创建
创建
查看类型
修改会报错
解包unpack
注意:解包左侧的变量的个数要与tuple中元素的个数相匹配。
Set集合
无序集合,主要作用用于去重。
创建:
通过这个示例,可以充分看到set这种数据结构的功用。
集合之间的运算
- &交集
a=set('abcde')
b=set('cdefg')
a&b
结果:{'c', 'd', 'e'} - |并集
a|b
结果:{'a', 'b', 'c', 'd', 'e', 'f', 'g'} - -差集
a-b
结果:{'a', 'b'}
注意:set集合是无序的,不能通过索引和切片来做一些操作。
Dictionary字典{}
字典这种数据结构,是把一个元素map到另一个元素上,简单可以理解为kv对应。
字典是python中重要的数据结构,必须多加练习以熟悉。
创建
d1={'apple':6688,'nokia':0,'mi':2999}
d1
apple,mi,nokia为key
6688,2999,0为value
注意:字典是无序的。
使用type查看字典类型
列出字典对象中所有元素
列出字典对象中元素的所有key或value
新增元素
d1['huawei']=1999
说明:
可以做为Key的数据 类型,字符,数字,元组,但不能为列表.和字典
可以做为VALUE的数据类型,可以是任何数据类型,包括字典
访问
对字典的访问无法像对字符串和列表一样,通过下标或切片进行。访问时须指定key
删除元素
字典合并
转换
元组型列表可以被转换为字典
——未完待续——