Python学习笔记系列——函数
今年下半年的计划主要是Python和Mysql了,公司不方便看书和视频,就照着廖雪峰的Python网站开始看了。以下纯为个人笔记记录,若是想系统学习的小伙伴还是看这里的好一些,毕竟系统。https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000
# -*- coding: utf-8 -*-
#调用函数
a=str(hex(255))
print(a) #空函数
def nop():
pass #绝对值函数
def my_abs(x):
if x >=0:
return x
else:
return -x
print(my_abs(int(input("请输入数字:")))) #位置参数
def Idempotent(x,y):
s=1
while y>=0:
s = s * x
y = y - 1
return s
print(Idempotent(5,2)) #默认参数
#1、必选参数在前,默认参数在后。
#2、使用默认参数最大的好处是能降低调用函数的难度。
#3、默认参数必须指向不变的对象。
def power(x,n=2):
s=1
while n>0:
s=s*x
n=n-1
return s
print(power(5)) #可变参数
def cale(*numbers): #&numbers 表示把numbers这个list的所有元素作为可变参数穿进去。
sum = 0
for i in numbers:
sum = sum + i*i
return sum
print(cale(1,2,3)) #关键字参数
def person(name,age,**kw):
print('name:',name,'age:',age,'other:',kw)
person('zichuan',24,city='shanghai')
ls ={'sex':'girl','city':'yongzhou','interest':'eat'}
person('qinglian',18,**ls) #**ls表示把ls这个dict的所有k-v用关键字参数传入到函数的**kw参数,kw将获得一个dict,注意kw获得的dict是ls的一份拷贝,对kw的改动不会影响到函数外的ls #命名关键字参数(只接收city和job作为关键字参数)
#和关键字参数**kw不同,命令关键字参数需要一个特殊分隔符*,*后面的参数被视为命名关键字参数。
def person_1(name,age,*,city,job):
print(name,age,city,job)
person_1('zichuan',25,city='魔都',job='Testing')#命令关键字参数必须传入参数名。 #递归函数(example:阶乘)
#1、优点是定义简单,逻辑清晰。
#2、使用时需要注意调用次数过多的话,会导致栈溢出,可使用尾递归的方式优化解决。
def fact(n):
if n==1:
return 1
return n*fact(n-1)
print(fact(4))
Python学习笔记系列——函数的更多相关文章
- Python学习笔记之函数
这篇文章介绍有关 Python 函数中一些常被大家忽略的知识点,帮助大家更全面的掌握 Python 中函数的使用技巧 1.函数文档 给函数添加注释,可以在 def 语句后面添加独立字符串,这样的注释被 ...
- python学习笔记系列----(一)python简介
一个月前,就按下决心要系统的学习下python了,虽然之前有学习过java,学习过c++,也能较为熟练的使用java做自动化测试看懂c++里的业务逻辑,但是实际上有那么多的东西自己还是不清楚,今天下定 ...
- Python学习笔记系列
1.小甲鱼 python 学习系列笔记
- python学习笔记系列----(八)python常用的标准库
终于学到了python手册的最后一部分:常用标准库.这部分内容主要就是介绍了一些基础的常用的基础库,可以大概了解下,在以后真正使用的时候也能想起来再拿出来用. 8.1 操作系统接口模块:OS OS模块 ...
- Python学习笔记 - day6 - 函数
函数 函数在编程语言中就是完成特定功能的一个词句组(代码块),这组语句可以作为一个单位使用,并且给它取一个名字.可以通过函数名在程序的不同地方多次执行(这叫函数的调用).函数在编程语言中有基本分为:预 ...
- 小甲鱼:Python学习笔记003_函数
>>> # 函数>>> def myFirstFunction(params1,params2...): print("这是我的第一个函数!") ...
- Python学习笔记系列——高阶函数(filter/sorted)
一.filter #filter()函数用于过滤序列.和map()类似,也接收一个函数和一个序列,把函数依次作用于每个元素,根据返回值是True还是False决定是否保留该元素. #filter()函 ...
- Python学习笔记系列——高阶函数(map/reduce)
一.map #变量可以指向函数,函数的参数能接受变量,那么一个函数就可以接受另一个函数作为参数,这种函数被称之为高阶函数 def add(x,y,f): return f(x)+f(y) print( ...
- python学习笔记系列----(二)控制流
实际开始看这一章节的时候,觉得都不想看了,因为每种语言都会有控制流,感觉好像我不看就会了似的.快速预览的时候,发现了原来还包含了对函数定义的一些描述,重点讲了3种函数形参的定义方法,章节的最后讲述了P ...
随机推荐
- 在GDI+中如何实现以左下角为原点的笛卡尔坐标系
今天写了一个求点集合的凸包的一个算法,虽然结果求解出来了,但是想将过程用GDI+绘制出来,就需要将点绘制出来,然而c#GDI+中绘图的坐标与我们常用数学中笛卡尔坐标系是不一样的,所以就要转换GDI+中 ...
- android调试debug快捷键
1. [Ctrl+Shift+B]:在当前行设置断点或取消设置的断点. 2. [F11]:调试最后一次执行的程序. 3. [Ctrl+F11]:运行最后一次执行的程序. 4. ...
- PHP的new self() 与new static()
参考链接:[PHP中new static()与new self()的区别异同分析],[PHP中new self()和new static()的区别探究],[PHP中static和self的区别] 要点 ...
- 关于vue2用vue-cli搭建环境后域名代理的http-proxy-middleware解决api接口跨域问题
在vue中用http-proxy-middleware来进行接口代理,比如:本地运行环境为http://localhost:8080但真实访问的api为 http://www.baidu.com这时我 ...
- <Android 基础(二十六)> 渐变色圆角Button
简介 总结下之前看的自定义View的内容,结合一个简单的例子,阐述下基本用法和大致的使用流程,这个例子比较简单,更复杂的自定义View,随着自己的学习,后面再慢慢添加.作为一个Android开发者,这 ...
- CentOS7系列--5.2CentOS7中配置和管理Docker
CentOS7配置和管理Docker Docker是操作系统级别的虚拟化工具,它能自动化布署在容器中的应用 1. 安装Docker 1.1. 安装Docker相关软件 [root@server1 ~] ...
- Vue 框架-04-计算属性
Vue 框架-04-计算属性 计算属性是什么? 大家可以去看官网解释:计算属性和侦听器 今天的第一个小实例: 为啥先放折磨一个实例,之前数据绑定的就已经可以实现了,看起来那么简单,就是为了告诉大家,当 ...
- zookeeper - java操作
ZKUtils.java package test; import java.io.IOException; import java.util.concurrent.CountDownLatch; i ...
- 0 Linux下Java使用ProcessBuilder执行命令与直接Bash执行命令之间的不同(环境变量方面)
0 问题发生 xiaojietest.java package tasks; import java.io.BufferedReader; import java.io.BufferedWriter; ...
- 回归JavaScript基础(四)
主题:JavaScript变量.作用域和内存问题 JavaScript的变量和别的语言比起来是与众不同的.说道变量,不得不谈他的作用域.同很多语言一样,JavaScript开发者也不用担心开发中内存的 ...