zoukankan      html  css  js  c++  java
  • 笔记,随时更改

    for 循环控制
    for i in range():
    print(i)

    count = 0
    while Ture:
    print(count)
    count += 1

    for i in range():
    for j in range(i):
    print("*",end='')
    print()

    fc = 10
    fro i in range(fc):
    a = fc - i
    b = 2*i-1
    for j in range(a):
    print(' ',end='')
    for k in range(1,b):
    print('*',end='')
    print()

    s = 'skdf'
    s.find() 查找位置
    s.count() 计数
    s.split() 切分
    s.strip() 去除
    s.title() 标题
    s.index() 索引
    s.replace() 取代
    s.isdigit() 数字
    s.isalpha() 是字母
    s.isalnum() 字母和数字
    s.isspace() 空格
    s.startswith() 开头
    s.endswith() 结尾
    s.join() 拼接
    s.swapwith() 翻转
    s.upper() 全大写
    s.lower() 全小写
    s.center() 补齐
    s.capitalize() 开头大写
    s.format()


    for i in range(1,10):
    for j in range(i):
    print("%s*%s=%s"%(i,j,i*j))
    print()

    print('chen{name}shao{name}age{name}liu{name}pi'.format(name='lius'))

    ch = 'dk:kdf:kdfj:kjdf:ne:kd'
    print(ch.split(3))

    l = ['kdf','sdf','sf','ef']
    re = ":".join(l) re = "" # 只能使用在字符串转换


    l.append() 添加
    l.extend() 打散添加
    l.insert() 指定位置添加
    del 删除 通用的
    l.pop() 删除,默认最后一个
    l.remove() 删除 指定删除
    l.reverse() 倒叙
    l.sort() 正序
    l.index() 索引位置

    info ={"name":'chen',"age":18,'xes':'male'}

    def my_min(x,y):
    """文档解释"""
    return x,y 返回值可以是一个或多个

    def my_mn():
    """文档解释"""
    user = input(">>").strip
    pwd = input(">>").strip
    return user, pwd # 返回值

    函数名定义规范: 见名知意, 函数是单独的一类功能的体现
    定义空函数 帮助构建基础架构
    def auth_user():
    """user authtication function"""
    pass
    def download():
    """upload file function"""
    pass
    def ls():
    """list contents function"""
    pass
    def cd():
    """change directory"""
    pass

    函数的调用

    函数名() 即调用函数 如 print() 调用打印函数
    input() 调用输入函数

    定义阶段不检查函数体内的语法, 执行才一并检查运行解释
    def foo():
    print("in th foo")
    bar()
    def bar():
    print("in the bar")

    foo() 这里是调用函数
    执行结果
    in the foo
    in the bar

    传参函数

    def foo(x,y):
    a = input(">>")
    b = input(">>")
    """ 文档解释"""
    print(x,y)
    bar(a,b)

    函数返回值是元组, 自动生成一个元组 并赋值给函数名

    def bar(a,b):
    print()
    return a,b


    函数的参数
    参数有两种, 形参与实参(形式参数实际参数)

    实参可以是常量, 变量,表达式的任意组合
    res = My_min(12,34,4>3,name)

    调用时,实际参数赋值给形式参数, 在python中只是单纯的绑定
    而对于函数来说, 这种绑定只是在函数运行时生效, 结束后自动解除


    重点来了
    位置参数, 即是指定位置传参从左到右依次定义参数
    凡是这种定义形式的参数都必须传参,否则报错

    def register(name,age,sex):
    print(name,age,ses)
    register() 不传参会报错, 提示缺少三个参数


    在调用函数时, 按照从左到右的顺序依次定义实参, 凡是按照这种
    都要一一对应传参,否则乱序


    关键字参数
    关键字参数是key = value的形式, 可以使用不完全关键字参数

    完全关键字参数
    def register(name,age,sex):
    print(name,age,sex)

    register(naem="chen",age=18,sex="male")

    注意在调用函数时, 关键字位置可以自由变换,多方位


    默认参数是在关键字参数前, 传参顺序是做到右依次赋值

    register("chen",18,sex="male")
    register(name="chen",18,"male") 错误的传参方法

    注意 默认参数必须在位置参数之后
    参数的值从左到右依次赋值
    def foo(arg= x):
    print(arg)

    默认参数通常是不可变类型

    *args
    传多参数时, (位置参数,默认参数,*args参数)
    *号代表接受多余的参数放到args中, 溢出的...

    def register(x,y,z=4,*args):
    print(x,y)
    print(x,args)

    参数1,2,3按照位置赋值给x,y,z 多余的会被* 回收赋值给args
    *会把传入的数转成元组
    register(1,2,3,4,5,6,7,89,99)


    多值是*args就派上用场了
    def add(*args):
    res=0
    for i in args:
    res += i
    return res

    add(1,2,34,5,6,7,9,99)


    **kwargs

    可变长度的关键字参数, ** 会把参数以字典的形式保存下来,

    def foo(x,**kwargs):
    print(x)
    print(kwargs)

    foo(x=2,y=4,z=8)
    1
    {"z"=8,"y"=4}

    **可以接受字典形式,

    打散操作

    def foo(x,y,z=3):
    print(x,y,z)

    foo(**{"x":1,"y":2})

    1,2,3

    结合全部
    *args与关键字参数**kwargs通常是结合使用, 那么代表可以
    接受任意形式,任意长度的参数

    完整写法:
    def wrapper(*args,**kwargs):
    pass

    在函数内用于接受函数传给另一个函数
    def wrapper(*args,**kwargs):
    func(*args,**kwargs)

  • 相关阅读:
    关押罪犯
    文化之旅
    [USACO11OPEN]玉米田迷宫Corn Maze
    排队布局
    最短路计数
    【模板】单源最短路径(标准版)
    最短路径问题
    无向图最小环
    localStorage的使用
    移动端如何引入日期插件
  • 原文地址:https://www.cnblogs.com/Knge/p/13283654.html
Copyright © 2011-2022 走看看