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 ...
随机推荐
- 自己编写jQuery插件 之 放大镜
一. 效果图 二. 原理讲解 1. 用到了两张图片,一张小图,一张大图. 2. 小图用于直接在页面上显示,大图则用于放大镜内显示 3. 放大镜实际是一个div,而大图则是这个div的背景图 4. 小图 ...
- Android 时间轴的实现
时间轴 时间轴,顾名思义就是将发生的事件按照时间顺序罗列起来,给用户带来一种更加直观的体验.京东和淘宝的物流顺序就是一个时间轴(如图),想必大家都不陌生. 时间轴的初探 初次见到这种UI,感觉整个布局 ...
- cnpm 淘宝镜像设置
很简单,一句话 npm install -g cnpm --registry=https://registry.npm.taobao.org
- 线性代数的视角理解LSR(least square regression)的参数评估算法本质
https://medium.com/@andrew.chamberlain/the-linear-algebra-view-of-least-squares-regression-f67044b7f ...
- mongodb存储引擎
存储引擎(Storage Engine)是MongoDB的核心组件,负责管理数据如何存储在硬盘(Disk)和内存(Memory)上.从MongoDB 3.2 版本开始,MongoDB 支持多数据存储引 ...
- Winform 多个窗口编辑同一条数据同步的实现
场景: 一个主窗口中,可以在列表(DataGridView)里选中一条记录编辑,打开一个编辑窗口(非模态窗口),编辑窗口保存后需要刷新父窗口,由于编辑窗口是非模态窗口,如果打开了多个窗口,并且都是编辑 ...
- Linux /dev/null详解
常用的命令展示 /dev/null 和 /dev/zero的区别 1./dev/null:表示 的是一个黑洞,通常用于丢弃不需要的数据输出, 或者用于输入流的空文件 ...
- I - Matches Game(异或运算符的使用)
I - Matches Game Description Here is a simple game. In this game, there are several piles of matches ...
- php 上传大文件主要涉及配置upload_max_filesize和post_max_size两个选项。
今天在做上传的时候出现一个非常怪的问题,有时候表单提交可以获取到值,有时候就获取不到了,连普通的字段都获取不到了,苦思冥想还没解决,群里人问我upload_max_filesize的值改了吗,我说改了 ...
- PHP设计模式系列 - 单例
单例模式 通过提供自身共享实例的访问,单例设计模式用于限制特定对象只能被创建一次. 使用场景 例如数据库实例,一般都会走单例模式. 单例模式可以减少类的实例化 代码:来源InitPHP框架,先检测类有 ...