作为以为小白,在学习Python的时候,必然会走一定的弯路,有人在弯路上走丢了,有人走出了弯路。我就是属于还未走出弯路的同学,所以我想谈谈我的Python学习之路。
我进入这个坑是因为这个最近几年比较火,想必大家都知道吧,我开始学习Python时,先学习的是linux基本命令,作为小白,在装linux时出现许多问题,小白安装可以看看http://blog.csdn.net/u013142781/article/details/50529030这个教程,可能能帮助你成功安装。
其次,学习linux基本操作,文件和目录,文件属性修改命令,查找与检索命令以及vim的使用,开始学习比较盲目,我就找了一些Python学习路线图,我认为可以的路线如下图所示:
Python入门教程第一阶段:
![3d1b437e7a0db5156c8d2144897f8cf3.png](https://img.php1.cn/3cd4a/1eebe/cd5/0ef126b5295c089b.webp)
Python第二阶段:
![540594e9c0c715d52660c0ac77c70a60.png](https://img.php1.cn/3cd4a/1eebe/cd5/45a090220e38e09d.webp)
在这里还是要推荐下我自己建的Python开发学习群:301056051,群里都是学Python开发的,如果你正在学习Python ,小编欢迎你加入,大家都是软件开发党,不定期分享干货(只有Python软件开发相关的),包括我自己整理的一份最新的Python进阶资料和高级开发教程,欢迎进阶中和进想深入Python的小伙伴
我的Python自学之路二:列表学习
我的Python自学之路,我们就简单粗暴的开始学习list。
列表是Python中最基本的数据结构,也是最常用的数据类型。
1.创建列表:
![4f16774204ea4495414be3c2c97ea5a0.png](https://img.php1.cn/3cd4a/1eebe/cd5/dc7ef30f57b727c7.jpeg)
2.列表常用操作:索引、切片、增加,删除。
(1)、索引:可使用索引访问列表中的值。
![94405fed95eeeaa4f8f99d9754495ef6.png](https://img.php1.cn/3cd4a/1eebe/cd5/1113165c4904ecc5.webp)
(2)、切片:截取列表中的值。
![36dfd1a08068e4e75c41497a110ffc0e.png](https://img.php1.cn/3cd4a/1eebe/cd5/b386c433a16f5497.webp)
![6dea8d011ee3439a87d7532336ac1fc3.png](https://img.php1.cn/3cd4a/1eebe/cd5/70be2ca197098d98.webp)
提示:列表的切片索引从0开始,我理解为下图:
![34c4905b8e02a5f54d4b1d72b5d1caa2.png](https://img.php1.cn/3cd4a/1eebe/cd5/c72d78d7317a9e8e.webp)
list[1:3]输出的为2,3。
(3)、增加:向列表中添加数据。
list.append(obj)向列表末端添加。
![632298690c75ce6e2a4557f4223b5f14.png](https://img.php1.cn/3cd4a/1eebe/cd5/e3aa5425383ba10d.png)
list.extend(seq)在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
![600322041afe0a28c2c0271067010227.png](https://img.php1.cn/3cd4a/1eebe/cd5/d05d9dfd09a56332.webp)
(4)、删除:list.pop(obj)移除列表末端一个数据,obj为列表的索引位置。list.remove(obj)移除匹配到的第一个值,obj为某个值。
pop():
![b33c0fec001713564665253b16092cdc.png](https://img.php1.cn/3cd4a/1eebe/cd5/e3aa5425383ba10d.png)
remove():
![aabb392b496dfe01319b620a828f2a1d.png](https://img.php1.cn/3cd4a/1eebe/cd5/6789f68dabde0aed.png)
3、列表常用方法。
list.extend()
![9c5a04e5ab4457051be60ad53e84c660.png](https://img.php1.cn/3cd4a/1eebe/cd5/ddcc574beb16294e.jpeg)
list.index(obj),obj为在列表中的元素,list.index(obj)得到的是obj所在的索引位置。
![78f53833a73f595921893450c241ae58.png](https://img.php1.cn/3cd4a/1eebe/cd5/6789f68dabde0aed.png)
list.insert(index,obj),在index位置上插入一个元素
![0d161ef271bc730d2403f9f9693bc1d6.png](https://img.php1.cn/3cd4a/1eebe/cd5/d05d9dfd09a56332.webp)
list.reverse()反向列表中元素
![2e4d8b4b723281ef6e3356644b3df4fc.png](https://img.php1.cn/3cd4a/1eebe/cd5/a1be7872e8d4934f.webp)
list.sort()对原列表进行排序
![0e89a04753632682d881f71c3cc3a850.png](https://img.php1.cn/3cd4a/1eebe/cd5/8ad8f3bf8da691df.webp)
list.len()获取列表长度
cmp(list1,list2)比较两个列表的元素
list+list1相当于list.extend(list1)
![3d7762dd80bd85b50126086d25cbacb1.png](https://img.php1.cn/3cd4a/1eebe/cd5/dc7ef30f57b727c7.jpeg)
list*2
![ddda37586c8bde5abb7c8efdd5a41442.png](https://img.php1.cn/3cd4a/1e618/bdf/129913486c37ddf6.jpeg)
max(list):返回列表元素最大值
min(list):返回列表元素最小值
list(seq):将元组转换为列表
我所知道的了解的方法主要就这几方面,如有不足之处,望理解。
我的Python自学之路三:元组及字典学习总结
一、元组
1、Python的元组与列表类似,不同之处在于元组的元素不能修改。
元组使用小括号,列表使用方括号。
元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。
2、创建元组
tup = ("python","java","Javascript",1,2,3)
tup1 = (1,2,3,4,5,6)
tup2 = ("a","b","c","d")
(1)、 创建空元组
tup = ()
(2)、元组只有一位时,用逗号结尾。
tup = (30,)
3、元组常用操作
元素索引、截取
![067f2565d5341ea82a1eb7a8e6282907.png](https://img.php1.cn/3cd4a/1eebe/cd5/8343fdbffb0056b5.webp)
与列表相比没有了,append()、pop()、remove()、insert()方法。
cmp(tuple1,tuple2):比较两个元组元素。
len(tuple):计算元组元素长度。
min():返回元组元素最小值。
max():返回元组元素最大值。
tuple(seq):将列表转化为元组。
二、字典
1、字典
字典是另一种可变容器模型,且可存储任意类型对象,同时也是Python中唯一映射类型。
映射类型对象里哈希值(键,key)和指向的对象(值,value)是一对多的的关系,通常被认为是可变的哈希表。
2、字典操作
(1)、创建空字典
dict = {}
(2)、创建非空字典
dict = {key1:value1,key2:value2,key3:value2}
dict ={"naem":"laowang","age":38}
dict = {1:2,3:4,5:6}
(3)、字典基本操作
a.访问字典的key值
dict = {"name":"laowang","age":"45","address":"xibei"}
for key in dict.keys():
print key #输出列表["name","age","address"]
b.访问字典的value值
dict[key] #返回key值对应的value值
如:dict["name"] #返回"laowang"这个value值
c.修改字典
dict = {"name":"laowang","age":"23","address":"xibei"}
dict["age"]=34
dict["address"]="huabei"
输出结果:
dict ={"name":"laowang","age":34,"address":huabei}
d.删除字典元素
dict ={"name":"laowang","age":34,"address":"xibei"}
del dict["name"] #删除键是“name”的条目
print dict #结果为["age":34,"address":"xibei"]
dict.clear() #清空字典所有条目
del dict #删除字典
e.字典的特性
字典值可以没有限制地取任何python对象,既可以是标准的对象,也可以是用户定义的,但键不行。
两个重要的点需要记住:
不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住,
键必须不可变,所以可以用数字,字符串或元组充当,所以用列表就不行。
(3)、字典常用方法
cmp(dict1,dict2) 比较两个字典元素
len(dict) 计算子典元素个数,既键的总数
str(dict) 输出课打印的字符串表示
type(variable) 返回输入的变量类型,如果变量是字典就返回字典类型
dict.clear()
dict.copy() 返回一个字典的浅复制
dict.fromkeys(seq[,val]) 创建一个新字典,一序列seq中元素做字典的键,val做键多对应的初始值。
dict.get(key,default = None) 返回指定的值,如果值不在字典中就返回default值
dict.has_key(key) 如果键在字典dict中返回true,否则返回false
dict.items() 以列表返回可遍历的的(键、值)元组数组
dict.keys() 以列表返回一个字典所有的键
dict.setdefault(key,default=None) 和get()类似,但是如果建不存在于字典中,将会添加键并将值设为default
dict.update(dict2) 把字典dict2的键/值对更新到dict里
dict.values() 以列表返字典中的所有值
pop(key[,default]) 删除字典给定键key所对应的值,返回值为删除的值
popitem() 随机返回并删除字典中的一对键和值
常用例子:
有如下值集合 [
11
,
22
,
33
,
44
,
55
,
66
,
77
,
88
,
99
,
90
],将所有大于
66
的值保存至字典的第一个key中,将小于
66
的值保存至第二个key的值中。