摘要:
# 在Python中,一个.py文件就称之为一个模块(Module) # 1.最大的好处是大大提高了代码的可维护性。 # 2.可以被其他地方引用 # 3.python内置的模块和来自第三方的模块 # 4.使用模块还可以避免函数名和变量名冲突 # 5.同样,Python也有包(Package),同名不同包引用是也不会冲突。 # 每一个包目录下面都会有一个__init__.py的文件,这个文件是必须存 阅读全文
摘要:
# 偏函数(Partial function) # 如int()函数可以把字符串转换为整数,当仅传入字符串时,int()函数默认按十进制转换 print(int('12345')) # 12345 # 但int()函数还提供额外的base参数,默认值为10。如果传入base参数,就可以做N进制的转换: print(int('12345', base=8)) # 5349 print(int(... 阅读全文
摘要:
# -----------------------1-------------------------------------------- # 由于函数也是一个对象,而且函数对象可以被赋值给变量,所以,通过变量也能调用该函数。 def now(): print('2019-3-25') f = now print(f()) # 2019-3-25 print(now.__name... 阅读全文
摘要:
L = list(map(lambda x: x * x, [1, 2, 3, 4, 5, 6, 7, 8, 9])) print(L) # [1, 4, 9, 16, 25, 36, 49, 64, 81] # lambda x: x * x等价于下面的 def f(x): return x * x # 关键字lambda表示匿名函数,冒号前面的x表示函数参数。 # 匿名函数有个限制,就是只能有 阅读全文
摘要:
# 通常求和函数定义,调动就求和 def calc_sum(*args): ax = 0 for n in args: ax = ax + n return ax # 如果不需要立即求和 def lazy_sum(*args): def sum(): ax = 0 for n in args: ax = ax + n return ax return sum f = lazy_sum(1, 3, 阅读全文
摘要:
# 和map()类似,filter()也接收一个函数和一个序列。 # 和map()不同的是,filter()把传入的函数依次作用于每个元素, # 然后根据返回值是True还是False决定保留还是丢弃该元素。 def is_odd(n): return n % 2 == 1 # filter()函数返回的是一个Iterator,也就是一个惰性序列, # 所以要强迫filter()完成计算结果,需要 阅读全文
摘要:
# sorted()函数list进行排序: L = sorted([36, 5, -12, 9, -21]) print(L) # [-21, -12, 5, 9, 36] # 可以看到默认是按照升序排 LL = sorted([36, 5, -12, 9, -21], key=abs) print(LL) # [5, 9, -12, -21, 36] 自定义key 按照绝对值进行排序 lstr 阅读全文
摘要:
# map()函数接收两个参数,一个是函数,一个是Iterable, # map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回。 def f(x): return x * x r = map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9]) # f作用掉序列的每个元素上,可提高代码可读性 print(r) # <map object at 0x000000 阅读全文
摘要:
# 函数式编程的一个特点就是,允许把函数本身作为参数传入另一个函数,还允许返回一个函数! # 变量可以指向函数 abs(-10) # 10 abs # # ------abs(-10)是函数调用,而abs是函数本身 x = abs(-10) print(x) # 10 # 函数名也是变量 f = abs print(f) # print(f(-10)) # 10 # 说明变量... 阅读全文
摘要:
# 只要把一个列表生成式的[]改成() L = [x * x for x in range(10)] print(L) # [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] g = (x * x for x in range(10)) print(g) # at 0x00000000021789C8> # print(next(g)) # 0 # print(ne... 阅读全文
摘要:
d = {'a': 1, 'b': 2, 'c': 3} for key in d: print(key, end=' ') # a b c dict的存储不是按照list的方式顺序排列,所以,迭代出的结果顺序很可能不一样 for ch in 'ABC': print(ch, end=' ') # A B C # 判断一个对象是否可迭代 from collections imp... 阅读全文
摘要:
# list或tuple的部分元素 L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack'] # 传统方法 print([L[0], L[1], L[2]]) # 取前三个值 r = [] n = 3 for i in range(n): r.append(L[i]) # 取前n个值 # 切片方法 # 从索引0开始取,直到索引3为止,但不包括索引3 prin 阅读全文
摘要:
# Python 常用内置函数 https://docs.python.org/3/library/functions.html#abs print(help(abs)) # Return the absolute value of the argument. 返回参数的绝对值。 print(abs(-20)) # 20 print(max(2, 3, 1, -5)) # 3 # 类型转换 pri 阅读全文
摘要:
list create 阅读全文
摘要:
# Python的循环有两种,一种是for...in循环,依次把list或tuple中的每个元素迭代出来 names = ['Michael', 'Bob', 'Tracy'] for name in names: print(name) # 计算1-10的整数之和 sumAdd = 0 for x 阅读全文
摘要:
age = 20 if age >= 18: print('your age is', age) print('adult') # 如果if语句判断是True,就把缩进的两行print语句执行了,否则,什么也不做。 # else else: age = 3 if age >= 18: print(' 阅读全文
摘要:
# !/usr/bin/env python3 # -*- coding: utf-8 -*- # list是一种有序的集合,可以随时添加和删除其中的元素。 classmates = ['Michael', 'Bob', 'Tracy'] print(classmates) # ['Michael', 'Bob', 'Tracy'] print(len(classmates)) # 3 pr... 阅读全文
摘要:
# ASCII编码和Unicode编码的区别:ASCII编码是1个字节,而Unicode编码通常是2个字节。 # Unicode把所有语言都统一到一套编码里,这样就不会再有乱码问题了。 # 新的问题又出现了:如果统一成Unicode编码,乱码问题从此消失了。但是,如果你写的文本基本上全部是英文的话,用Unicode编码比ASCII编码需要多一倍的存储空间,在存储和传输上就十分不划算。 # 所以,... 阅读全文
摘要:
Python有以下主要的数据类型: 1. 字符串:用于表示文本数据,使用单引号'或双引号"包围。例如: python 'Hello' "World" 2. 整数:整型数据,可以是正数或负数。例如: python 100 -50 3. 浮点数:用于表示实数,使用小数点。例如: python 3.14 阅读全文
摘要:
print('test', '怎么自动建了这么多目录', 'aaaaaaa') #test 怎么自动建了这么多目录 aaaaaaa 注释# # a = 100 if a >= 0: print(a) #100 else: print(-a) # 转义 print('I\'m ok.') # I'm 阅读全文