python笔记

来源:互联网 发布:php array 转 object 编辑:程序博客网 时间:2024/06/06 00:42

_(下划线保存数字运算最后一次结果的值)

round(1.222,2)结果为1.22

'dones\'t'自动转为"dones't"

r'c:\user\name'原样输出,不转义

\可以连接上下行

list的enumerate()、dict的items()

def enumerate(sequence, start=0):    n = start    for elem in sequence:        yield n, elem        n += 1
list(range(5))  [0, 1, 2, 3, 4]
while True:...     pass  # Busy-wait for keyboard interrupt (Ctrl+C)...
>>> fib<function fib at 10042ed0>>>> f = fib>>> f(100)0 1 1 2 3 5 8 13 21 34 55 89
raise ValueError('invalid user response')  抛出错误
i = 5def f(arg=i):    print(arg)i = 6f()    结果输出5,函数的默认值将在函数定义时确定
def f(*arg):
    for i in arg:
        print(i)   用于接收多个参数f(1,2,3)
def f(**args):
    for i in args:
        print(i, args[i])    用于接收字典,含关键字参数多个值f(a='123',b='345',c='999')
def concat(*args, sep='\n'):
    return sep.join(args)    join连接字符串以sep分割i=['www','baidu','com'];j=iter(i);'.'.join(j)输出www.baidu.com
a=[1,3];range(*a)  输出range(1,3)  *用于解压list、tuple
**   用于解压字典 d{'a':1,'b':2} f(**d)等价于f(a=1,b=2)
mysum = lambda *arg:sum(arg)
def f(ham: str, eggs: str = 'eggs') -> str:   函数注释f.__annotations__  文档注释f.__doc__


a[len(a):]=[x]     a[len(a):] = LIST


vec = [[1,2,3], [4,5,6], [7,8,9]]>>> [num for elem in vec for num in elem][1, 2, 3, 4, 5, 6, 7, 8, 9]                   列表解析
import importlib; importlib.reload(modulename)   重新导入modulename
import sys; sys.argv   用于接受外部参数sys.argv[0]为文件名
import sys>>> sys.path.append('/ufs/guido/lib/python')      添加默认路径
repr()转换成人易阅读的字符串str()转换成机器易阅读的字符串
try:...     this_fails()... except ZeroDivisionError as err:...     print('Handling run-time error:', err)...Handling run-time error: int division or modulo by zero   别名输出具体错误信息

class Dog:    tricks = []             # mistaken use of a class variable    def __init__(self, name):        self.name = name    def add_trick(self, trick):        self.tricks.append(trick)>>> d = Dog('Fido')>>> e = Dog('Buddy')>>> d.add_trick('roll over')>>> e.add_trick('play dead')>>> d.tricks                # unexpectedly shared by all dogs['roll over', 'play dead']        类变量分享给所有实例化的类,类似于浅拷贝(可变的值才会共享)

class Dog:    def __init__(self, name):        self.name = name        self.tricks = []    # creates a new empty list for each dog    def add_trick(self, trick):        self.tricks.append(trick)>>> d = Dog('Fido')>>> e = Dog('Buddy')>>> d.add_trick('roll over')>>> e.add_trick('play dead')>>> d.tricks['roll over']>>> e.tricks['play dead']                   self.变量只有自己拥有

0 0