[PYTHON] DEVOPS02 - Python基础知识01

标签: python devops
1. 初识ipython
ipython是一个命令行ide具有自动补全功能和我还不知道的功能。

1.1 tab补全,熟悉linux系统的小伙子们应该都知道了,
可以通过上下键来选择候选框中的内容。

1.2 如果查询变量或函数是什么类型可以按照下面的格式
? abc
然后会显示出是什么类型,想要知道更多信息的话可以:
?? abc

2. python变量
变量不需要提前声明。可以直接赋值,如
aa = 123
也可以通过type函数来查询变量类型,如
type(aa)
输出为int
变量类型有很多,如
int,str,unicode,list等,等等等等

2.2 元组:tuple
aa = (1,2,3,4,5)

元组与列表有区别,列表中的元素可变,但是元组中的值是不可变的。比如给元组第二个值赋值
aa[2]=3
会提示不可变。
另外元组读取速度比列表快,别问为什么,我也不知道。

2.3 字典:dict
abc = {"name":"zhangky","age":99}
abc["name"]
输出:
zhangky
abc.keys()
会打印键名
['name','age']
字典重新赋值类似列表

2.4 布尔类型:bool
True或False,如
1>2
会输出
False
abc = 1<2
会输出
True

2.5 变量总结
变量名 = 赋值
变量名必须是大小写英文、数字或下划线的组合,同时不可以用数字开头,真的好想用数字开头啊!

3. Python基本语句
3.1 if条件
if 条件1:
执行语句
elif:
执行语句
else:
执行语句
fi

3.2 while条件:
while 条件:
循环内语句集合

3.3 for循环
for 条件:
执行语句


for i in range(0,10):
print i

for循环中可以插入if条件语句,并使用break和continue控制循环是否进行。
下面这段当i=5时会终止循环
for i in range(0,10):
if i == 5:
break
print i

打印结果:
0
1
2
3
4

下面这段当i=5时不会终止循环
for i in range(0,10):
if i == 5:
continue
print i

0
1
2
3
4
5
6
7
8
9

3.4 for循环与迭代器
迭代操作:用于for循环遍历的对象
1、集合数据类型(列表,元组,字典,数值)
2、迭代器
迭代器可以被next()函数不断调用并不断返回下一个值的对象

定义一个列表
aa = [1,2,3,4]
type(aa)
list

for i in aa:
    print i

1
2
3
4

aa.next()
无法调用因为aa不是迭代器类型
类型转换:
ab = iter(aa)
ab.next()
1
ab.next()
2
ab.next()
3
ab.next()
4
ab.next()
报错!因为没有下一个值了,我很好奇有没有before,但是是没有的!

据说迭代器不会占用系统太多资源

3.5 生成器
本质上还是迭代器,用关键字yield来返回值
In [36]: def testgen(n):
    ...:     yield n+2
    ...:

In [37]: tg = testgen(5)

In [38]: tg.next()
Out[38]: 7

In [39]: tg.next()

3.6列表解析与生成器表达式
3.4及3.5小结主要作用是为了理解列表解析与生成器表达式,一个非常有用并且简单灵活的工具,用来动态创建列表,在python中经常用到,如:
列表解析,想要把列表中的值加2
In [40]: aa = [1,2,3,4,5,6,7]

In [41]: [ item+2 for item in aa]
Out[41]: [3, 4, 5, 6, 7, 8, 9]

生成器表达式,将列表转换为生成器并使列表中每个值加2
In [43]: iaa = ( item+2 for item in aa )

In [44]: iaa.next()
Out[44]: 3

3.7 函数式编程
需要理解函数创建,作用,调用
如:
def get_abc(变量):
函数内容
return 返回值
bcd = get_abc(传入参数)




头痛,先不分类内容了。

版权所有:《Hoiwan's 》 => 《[PYTHON] DEVOPS02 - Python基础知识01
本文地址:http://ihoiwan.com/?post=54
除非注明,文章均为 《Hoiwan's 》 原创,欢迎转载!转载请注明本文地址,谢谢。

发表评论: