目录

程序员子悠 · 好记性不如烂笔头

技术人生 X 人生技术

X

Python学习笔记一

python3 笔记一

  1. Python输入input()函数
name = input('please input your name:')
  1. Python还允许用r''表示''内部的字符串默认不转义
print(r'\\\t\\')
  1. Python允许用'''...'''的格式表示多行内容
>>> print('''line1
... line2
... lin33''')
line1
line2
lin33
  1. Python 精确除法用‘/’,取整除法用‘//’,取余用‘%’
>>> 10 / 3
3.3333333333333335
>>> 10 // 3
3
>>> 10 % 3
1
>>> 11 // 3
3
>>> 11 // 2
5
>>>
  1. Python编码函数ord(),chr()
>>> ord('A')
65
>>> ord('中')
20013
>>> chr(66)
'B'
>>> chr(25991)
'文'
>>>
  1. list 操作类似数组 初始化用[] 可变
  • 索引可以为负数,倒序获取 list[-1]
  • 添加到末尾 list.append()
  • 插入到指定位置 list.insert(2, 'aaa')
  • 删除末尾 list.pop(),删除指定位置 list.pop(index)
  1. tuple 元组 初始化用() 不可变
  2. dict 类似map
  • 删除指定key dict.pop(key)
d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
  1. set
  • 添加key set.add(key)
  • 删除key set.remove(key)
s = set([1, 2, 3])
  1. 函数
  • 定义函数时,需要确定函数名和参数个数;

  • 如果有必要,可以先对参数的数据类型做检查;

  • 函数体内部可以用return随时返回函数结果;

  • 函数执行完毕也没有return语句时,自动return None。

  • 函数可以同时返回多个值,但其实就是一个tuple。

  • 支持默认参数

    	def add_end(L=None):
    	    if L is None:
    	        L = []
    	    L.append('END')
    	    return L
    
  • 支持可变参数

    	//*nums表示把nums这个list的所有元素作为可变参数传进去
    		def calc(*numbers):
    		    sum = 0
    		    for n in numbers:
    		        sum = sum + n * n
    		    return sum
    
  • 关键字参数

    		def person(name, age, **kw):
    		    print('name:', name, 'age:', age, 'other:', kw)
    
  • 命名关键字参数

    		def person(name, age, *, city, job):
    		    print(name, age, city, job)
    

和关键字参数**kw不同,命名关键字参数需要一个特殊分隔符*,*后面的参数被视为命名关键字参数。

  • Python的函数具有非常灵活的参数形态,既可以实现简单的调用,又可以传入非常复杂的参数。
    默认参数一定要用不可变对象,如果是可变对象,程序运行时会有逻辑错误!
    要注意定义可变参数和关键字参数的语法:
    args是可变参数,args接收的是一个tuple;
    **kw是关键字参数,kw接收的是一个dict。
    以及调用函数时如何传入可变参数和关键字参数的语法:
    可变参数既可以直接传入:func(1, 2, 3),又可以先组装list或tuple,再通过
    args传入:func((1, 2, 3));
    关键字参数既可以直接传入:func(a=1, b=2),又可以先组装dict,再通过kw传入:func({'a': 1, 'b': 2})。
    使用
    args和**kw是Python的习惯写法,当然也可以用其他参数名,但最好使用习惯用法。
    命名的关键字参数是为了限制调用者可以传入的参数名,同时可以提供默认值。
    定义命名的关键字参数在没有可变参数的情况下不要忘了写分隔符*,否则定义的将是位置参数。

标题:Python学习笔记一
作者:zhuSilence
地址:https://home.zxsilence.cn/articles/2017/10/17/1570340337807.html