enumerrate函数
enumerate函数用于遍历序列中的元素以及它们的下标
参数为可遍历的变量,如 字符串,列表等
一个列表或数组既要遍历索引又要遍历元素时,使用内置enumerrate函数更加直接,优美
for i,j in enumerate('abc'):
print i,j
0 a
1 b
2 c
python字符串排序方法
>>> s = "string"
>>> l = list(s)
>>> l.sort()
>>> s = "".join(l)
>>> s
'ginrst'
Python中运算符"=="和"is"的差别分析
Python中对象包含的三个基本要素,分别是:id(身份标识)、python type()(数据类型)和value(值)。is和==都是对对象进行比较判断作用的,但对对象比较判断的内容并不相同。下面来看看具体区别在哪。
Python中比较两个对象是否相等,一共有两种方法,简单来说,它们的区别如下:
is是比较两个引用是否指向了同一个对象(引用比较)。
==是比较两个对象是否相等。
>>> a = [1, 2, 3]
>>> b = a
>>> b is a # a的引用复制给b,他们在内存中其实是指向了用一个对象
True
>>> b == a # 当然,他们的值也是相等的
True
>>> b = a[:] # b通过a切片获得a的部分,这里的切片操作重新分配了对象,
>>> b is a # 所以指向的不是同一个对象了
False
>>> b == a # 但他们的值还是相等的
True
字符串格式化函数 - format
1.位置方法格式化
>>> '{}.{}'.format('pythontab', 'com')
'pythontab.com'
>>> '{}.{}.{}'.format('www', 'pythontab', 'com')
'www.pythontab.com'
>>> '{1}.{2}'.format('www', 'pythontab', 'com')
'pythontab.com'
>>> '{1}.{2} | {0}.{1}.{2}'.format('www', 'pythontab', 'com')
'pythontab.com | www.pythontab.com'
字符串的format函数可以接受不限个参数,参数位置可以不按顺序,
参数可以不使用或者使用多次,非常灵活
2.通过关键字参数
>>> '{domain}, {year}'.format(domain='www.pythontab.com', year=2016)
'www.pythontab.com, 2016'
>>> '{domain} ### {year}'.format(domain='www.pythontab.com', year=2016)
'www.pythontab.com ### 2016'
>>> '{domain} ### {year}'.format(year=2016,domain='www.pythontab.com')
'www.pythontab.com ### 2016'
3.通过下标
>>> '{0[1]}.{0[0]}.{1}'.format(['pyhtontab', 'www'], 'com')
'www.pyhtontab.com'
4.格式限定符
它有着丰富的的“格式限定符”(语法是{}中带:号),比如:
填充与对齐
填充常跟对齐一起使用
^、<、>分别是居中、左对齐、右对齐,后面带宽度
:号后面带填充的字符,只能是一个字符,不指定的话默认是用空格填充
>>> '{:>10}'.format(2016)
' 2016'
>>> '{:#>10}'.format(2016)
'######2016'
>>> '{:0>10}'.format(2016)
'0000002016'
精度常跟类型f一起使用
12 >>> '{:.2f}'.format(2016.0721)
'2016.07'
b、d、o、x分别是二进制、十进制、八进制、十六进制
>>> '{:b}'.format(2016)
'11111100000'
>>> '{:d}'.format(2016)
'2016'
>>> '{:o}'.format(2016)
'3740'
>>> '{:x}'.format(2016)
'7e0'
>>>