Python第5天——非班科计算机菜鸟自救手册

函数&s一些高级特性


今天仍旧是按照廖大大的教程来学,进度真的神慢(周末的学习动力low是我的bug)

1. def functions

  • argument checks
 if not isinstance (变量名,要检查的变量类型)
       	raise TypeError('xxx')		#类型错则显示TypeError : xxx
  • empty functions

有脑洞没内容,又想顺利跑代码时用

def empty():
   		pass
  • 函数返回伪多值

    eg: x, y = coordinata (x, y, step, angle)
    但coordinate() 返回的其实是一个tuple, 然后按序赋值给x,y 罢了

arguments(形参)

  • 分类
    • positional argument
      def fun1(x, y) :      #可用list, tuple, 直接上值,性如其名只要位置对上
      		pass
  • default argument
def fun2 (x = 'Charles') :
		pass
  • changeable argument

*changeable ------->()

不管拿到的是list or str等等都会存在()里

  • keyword argument

**kw------> { }

  • named keyword argument
    *,nkw------>固定名字的为位置参数,可用dict 中的kw赋值

recursive functions

  • 汉诺塔问题
  • 尾递归优化问题

slices

list [ m: n: t] ------->从第m+1开始切,切到第n个,每t个切一刀

上一篇:linux非root用户安装ncurses-devel依赖,解决configure: error: No curses library functions found


下一篇:非法优化