目录


[TOC]


enumerate遍历可迭代对象

iterable = list('Hello World!')
for i, item in enumerate(iterable):
print i, item

# 同时参数二可以指定开始索引
for i, item in enumerate(iterable, 1):
iterable = list('Hello World!')
for i, item in enumerate(iterable):
print i, item

# 同时参数二可以指定开始索引
for i, item in enumerate(iterable, 1):
print i, item

生成器创建列表,字典,集合

my_list = [i * i for i in range(10)]
my_dict = {i: i * i for i in xrange(10)}
my_set = {i * 15 for i in xrange(10)}
print my_list
print my_dict
my_list = [i * i for i in range(10)]
my_dict = {i: i * i for i in xrange(10)}
my_set = {i * 15 for i in xrange(10)}
print my_list
print my_dict
print my_set

强制浮点数除法

  • 方法一
    print 1/2, 1.0/print 1/2, 1.0/2
  • 方法二

    只用在Python2中,在Python3中默认导入

    import __future__ import division
    print 1/2, 1.0/import __future__ import division
    print 1/2, 1.0/2

if 结构简化

  • or判断
    if n in [1, 3, 5, 7]:
    pass

    # 相当于下边的表达式
    if n==1 or n==3 or n==5 or n==7:
    pass
  • 三元运算
    # [on_true] if [expression] else [on_false]
    x, y = 50, 25
    small = x if x< y else y
  • 链式比较操作符
    # 这样的表达式在Python中是可行的
    num = 2
    if 1 < num < 3:
    print num

字符串逆序

my_list = [1, 2, 3, 4]
print my_list[::-1]

# 下边的表达式会改变my_list本身
my_list.reverse()
print my_list

交换变量

a = 'apple'
b = 'banana'
print a, b
# 在Python中这种表达式可行
a, b = b, a
print a, b