Python 流程化代码或结构代码

注释使用#号对单行进行处理

也可以使用"""的文字列进行很长的注释操作

使用\号进行折行处理

比较的方法允许使用 10<x<100<1000的判断条件

清除对象内容使用None test=None的设定

使用循环外的else 如

test={"a":10}
for a in test.keys():
    print(a)
else:
    print("end loop")
循环结束后end loop可以被输出
for 循环没有 i=0; i < 10; i++的写法 只有 xxx in list 的写法
zip 可以同时循环多个目标
days = ['Monday', 'Tuesday', 'Wednesday','a']
fruits = ['banana', 'orange', 'peach','b']
drinks = ['coffee', 'tea', 'beer','c']
desserts = ['tiramisu', 'ice cream', 'pie', 'pudding']
for day, fruit, drink, dessert in zip( days, fruits, drinks, desserts):
    print( day, ": drink", drink, "- eat", fruit, "- enjoy", dessert)
zip如上内容为循环的内容为最小的数组的长度
 
range函数 使用list(range(0,3))可以默认生成函数的内容
规则为0<=x<3的内容 得到的结果为[0,1,2]
 
还可以使用以下内容进行数组的生成,一下方式为推导式
a_list = [number for number in range(1, 6) if number % 2 == 1]
for in range if 可以自动生成数组中的元素
 
还可以生成数组型元组
rows = range( 1, 4)
cols = range( 1, 3)
cells = [(row, col) for row in rows for col in cols]
print(cells)
 
推导式还可以使用在字典中如下
{ key_ expression : value_ expression for expression in iterable }
word = 'letters‘
letter_ counts = {letter: word. count( letter) for letter in word}
letter_ counts {'l': 1, 'e': 2, 't': 2, 'r': 1, 's': 1}

集合推导式的方式和数组相同

生成器推导式
number_thing = (number for number in range( 1, 6))
type(number_ thing)的结果为一个生成器<class 'generator'>
使用list(number_thing)得到结果[1,2,3,4,5]
注意 两次使用迭代器后得到的结果为空值
 
def do_ nothing():
  pass
 
None 和 不含 任何 值 的 空 数据 结构 区分 开来。 0 值 的 整型 / 浮点 型、 空 字符串('')、 空 列表([])、 空 元 组((,))、 空 字典({})、 空 集合( set()) 都 等价 于 False, 但是 不等于 None。
判断主main的方式 if __name__ == "__main__": 可以判断是否为主启动文件
 
python函数的概念总体趋近于js的函数

def sum_test(*args):
 print(args)
 return sum(args)

def test_func(func, *args):
    return func(*args)#注意*号的使用 如果不加*号则表示传入参数为元组args的所有内容和其他参数,如果加*号则表示直接传入参数 差别很细小
print(test_func(sum_test, 1, 2,3))

python 可以使用内部函数 和js也是一样的
def sum_test():
    def test_print():
        print("test")
        return None
    test_print()
    return None

sum_test()

lambda 函数的方式
fnc = lambda word, *args: word. capitalize() + '!' + str(sum(args))
a = fnc("asdfdasfdasfds", 1, 10, 2)
print(a)
 
range 的生成器使用函数+yield的方式
def func():
  yield 10
posted @ 2018-01-26 11:06  spchenjie  阅读(315)  评论(0编辑  收藏  举报