撩课-Python-每天5道面试题-第6天
一. 函数的概念是什么? 在Python中如何定义?使用场景是什么?
概念
写了一段代码实现了某个小功能; 然后把这些代码集中到一块, 起一个名字; 下一次就可以根据这个名字再次使用这个代码块, 这就是函数 定义 def 函数名称(参数1, 参数2...):
pass # 具体的函数执行代码
return None # 默认, 可以根据需求设置返回值
使用场景
将需要多次执行的重复性代码, 进行封装成函数, 方便代码的重用
def xxx():
print()
print()
print()
将有规律的重复性代码, 封装成函数, 更加灵活方便 def xxx(num):
for i in range(, num):
print(i)
分解任务, 简化程序逻辑, 使代码更加模块化 def firstStep():
pass
def secondStep():
pass
def thirdStep():
pass
firstStep()
secondStep()
thirdStep()
二. 尝试封装一个函数, 计算不定数据的累加和, 返回给外界
def 累加和(num):
result =
for i in range(, num + ):
result += i
return result print(累加和()) #
print(累加和()) #
三. 如何定义不定长参数函数?
def 函数名(*args):
pass
def 函数名(**kwargs):
pass
前者是普通参数
后者适用于关键字参数
需要注意: 传递之后的拆包操作 装包
把传递的参数, 包装成一个集合, 称之为"装包"
拆包
把集合参数, 再次分解成单独的个体, 称之为"拆包"
四. 缺省参数代表什么含义?
场景
当我们使用一个函数的时候, 如果大多数情况下, 使用的某个数据是一个固定值, 或者属于主功能之外的小功能实现;
则可以使用默认值
这种参数, 称为"缺省参数"
定义
def 函数名(变量名1=默认值1, 变量名2=默认值2):
函数体
函数体中, 即使外界没有传递指定变量, 也可以使用, 只不过值是给定的默认值
使用
函数名(变量1, 变量2)
此处如果是缺省参数, 则可以不填写
def sum(a, b = ):
print(a + b) sum() #
sum(, ) #
五. Python函数中, 值是引用传递还是值传递?\
值传递和引用传递
1.1 值传递
是指传递过来的, 是一个数据的副本;
修改副本, 对原件没有任何影响
.2引用传递
是指传递过来的, 是一个变量的地址
通过地址, 可以操作同一份原件 在Python当中, 你没得选, 只有引用传递(地址传递)
但是
如果数据类型是可变类型, 则可以改变原件
如果数据类型是不可变类型, 则不可以改变原件
撩课-Python-每天5道面试题-第6天的更多相关文章
- 撩课-Java每天5道面试题第13天
撩课Java+系统架构点击开始学习 96.JDBC操作数据库的步骤 ? .加载数据库驱动 .创建并获取数据库链接 .创建jdbc statement对象 .设置sql语句 .设置sql语句中的参数(使 ...
- 撩课-Java每天5道面试题第15天
撩课Java+系统架构点击开始学习 106.什么是Hibernate的并发机制?怎么去处理并发问题? a.Hibernate的Session对象是非线程安全的, 对于单个请求,单个会话, 单个的工作单 ...
- 撩课-Java每天5道面试题第10天
撩课Java+系统架构 视频 点击开始学习 81.Servlet的会话机制? HTTP 是一种无状态协议, 这意味着每次客户端检索网页时, 都要单独打开一个服务器连接, 因此服务器不会记录下 先前客户 ...
- 撩课-Java每天5道面试题第9天
撩课Java+系统架构 视频 点击开始学习 76.XML技术的作用? XML技术用于数据存储. 信息配置. 数据交换三方面. 可以将数据存储在XML中, 通过节点. 元素内容. 属性标示数据内容及关系 ...
- 撩课-Java每天5道面试题第8天
撩课Java+系统架构 视频 点击开始学习 71.jsp有哪些内置对象?作用分别是什么? Page, pageContext, request, response, session, applicat ...
- 撩课-Java每天10道面试题第7天
撩课Java+系统架构 视频 点击开始学习 61.什么是并发修改异常? 什么是并发修改异常: 当我们在遍历实现了collection接口 与iterator接口的集合时(List.Set.Map), ...
- 撩课-Java每天10道面试题第4天
撩课Java+系统架构 视频 点击开始学习 31.静态变量和实例变量的区别? 静态变量也叫类变量, 这种变量前加了static修饰符. 可以直接用类名调用, 也可以用对象调用, 而且所有对象的同一个类 ...
- 撩课-Python-每天5道面试题-第9天
一. Python程序中, 文件的处理步骤是什么? 打开 open("文件","模式") 读写 2.1 读 f.read(字节数) 字节数默认是文件内容长度 下 ...
- 撩课-Python-每天5道面试题-第8天
一. 解释下什么是闭包? 有怎样的场景作用? 概念 在函数嵌套的前提下 内层函数引用了外层函数的变量(包括参数) 外层函数, 又把 内层函数 当做返回值进行返回 这个内层函数+所引用的外层变量, 称为 ...
随机推荐
- java.lang.IncompatibleClassChangeError:可以考虑是否是jar包冲突
一.背景:启动tomcat的时候,报错: java.lang.IncompatibleClassChangeError: class org.springframework.core.type.cla ...
- Comet OJ - Contest #0题解
传送门 菜爆了--总共只有一道题会做的--而且也没有短裙好难过 为啥必须得有手机才能注册账号啊喂--歧视么-- \(A\) 解方程 推一下柿子大概就是 \[x-\sqrt{n}=y+z+2\sqrt{ ...
- BZOJ 1248--游乐园(DFS&贪心)
1248: 游乐园Pleasure Ground Time Limit: 10 Sec Memory Limit: 128 MBSec Special JudgeSubmit: 6 Solved ...
- openpyxl读写Excel文件
安装 pip install openpyxl 一个简单的实例: 最初的表格 #!/usr/bin/env python # -*- coding:utf-8 -*- import openpyxl ...
- sublime package control失败
https://blog.csdn.net/jyfu2_12/article/details/86667132 安装时的错误提示如下: Error installing Package Control ...
- 知名协作工具 Slack 换新 logo 啦!
简评:本文系译文.Slack 在自家 Blog 上解释了新的设计 -- 旧版的 logo 有 11 种颜色,在非白色背景的情况下,logo 不仅难看,而且很容易在多个地方上表现不一致. 新年换新装,S ...
- Polycarp Restores Permutation
http://codeforces.com/contest/1141/problem/C一开始没想法暴力的,next_permutation(),TLE 后来看了这篇https://blog.csdn ...
- springboot(十二)-分布式锁(redis)
什么是分布式锁? 要介绍分布式锁,首先要提到与分布式锁相对应的是线程锁.进程锁. 线程锁:主要用来给方法.代码块加锁.当某个方法或代码使用锁,在同一时刻仅有一个线程执行该方法或该代码段.线程锁只在同一 ...
- php正则验证邮箱、手机号、姓名、身份证、特殊符号等
1.邮箱验证 1 $email='1515212@qq'; 2 $preg_email='/^[a-zA-Z0-9]+([-_.][a-zA-Z0-9]+)*@([a-zA-Z0-9]+[-.])+( ...
- Mac 10.12常用软件清单
链接: https://pan.baidu.com/s/1slds1OD 密码: 7m5t 配套教程:http://www.cnblogs.com/EasonJim/tag/mac/ 如果失效了,联系 ...