Python学习笔记丨函数和类相关基础知识总结和易错点分享,包括def、lambda、class等

简介: Python学习笔记丨函数和类相关基础知识总结和易错点分享,包括def、lambda、class等

Python函数和类

本篇笔记主要内容是Python中函数和类相关基础知识总结和易错点分享,包括def、lambda、class等

Python中的函数

函数是一种仅在调用时运行的代码块可以将数据(称为参数)传递到函数中函数可以把数据作为结果返回

  • 创建:使用 def 关键字定义函数,创建成功后可以进行调用
  • 调用:使用函数名称后跟圆括号
  • 参数:信息可以作为参数传递给函数,参数在函数名后的括号内指定,多个参数需用逗号分隔
  • 默认参数:调用了不带参数的函数,则使用默认值
  • 任意参数:如果不知道传递给函数多少个参数,在函数定义的参数名称前添加 * 函数将接收一个参数元组,并可以相应地访问各项。
  • 关键字参数:可以使用 key = value 语法发送参数,参数的顺序无关紧要。“关键字参数”一词通常简称为 kwargs
  • 参数类型:发送到函数的参数可以是任何数据类型(字符串、数字、列表、字典等),并且在函数内其将被视为相同数据类型
  • 返回值:如需使函数返回值,使用 return 语句
  • pass语句:函数定义不能为空,但是如果出于某种原因写了无内容的函数定义,需要使用 pass 语句来避免错误,等之后在进行补充完善。
#以下是个函数小栗子:
def mydef(name,old):
    print('your name:',name,' old:',old)
    key = old+1
    return key
new = mydef('je', 15)
print(new)
your name: je  old: 15
16

lambda匿名函数

lambda 函数可接受任意数量的参数,但只能有一个表达式,函数体更简单,一般只写一行,以下为一个小栗子:

x = lambda a, b : a * b+1
print(x(2, 8))
17
  • 创建语法:name = lambda [list] : 表达式
  • 注意:[list] 作为可选参数
  • 优势:对于单行函数,使用 lambda 表达式可以省去定义函数的过程,让代码更加简洁。对于不需要多次复用的函数,使用 lambda 表达式可以在用完之后立即释放,提高程序执行的性能

Python中的类

Python 是一种面向对象的编程语言,类(Class)类似对象构造函数,或者是用于创建对象的“蓝图”, 用来描述具有相同的属性和方法的对象的集合,它定义了该集合中每个对象所共有的属性和方法。

  • 创建类:使用 class 关键字进行创建
  • 创建对象:根据类来创建对象,对象具有类的属性
  • init() 函数:所有类都有一个名为 init() 的函数,它始终在启动类时执行,使用 init() 函数将值赋给对象属性。
  • 注释:每次使用类创建新对象时,都会自动调用init() 函数
  • 对象方法:对象也可以包含方法,对象中的方法是属于该对象的函数
  • 提示:self 参数是对类的当前实例的引用,用于访问属于该类的变量,它必须是类中任意函数的首个参数
  • 修改对象属性:直接利用对象.参数=value进行赋值,修改该对象的属性
  • 继承:子类继承父类的属性和方法
class myclass:
    def __init__(self,name):
        self.name = name
    def myf(self,old):
        self.old = old
        print('hello,',self.name,self.old)
p = myclass('tom')
p.myf(23)
hello, tom 23
# 修改对象属性
p.name = 'shiny'
p.myf(15)
hello, shiny 15
# 类的继承
class newclass(myclass):
    pass

易错点

  1. 定义函数时默认参数必须放在参数列表的最后面,否则会报错
  2. 传递不定长参数有两种方法:*元组的方式传入,**字典的方式传入
  3. *单独出现:如果单独出现星号,*后的参数必须用关键字传入
  4. /单独出现:强制位置参数,/之前的参数必须使用指定位置参数
  5. 函数内可以访问全局变量,但不能改变其值,如果需要改变全局变量的值,可以使用global方法

© 素材来源于网络,侵权请联系后台删除

往期推荐:

文献丨群体转录组分析锁定关键转录因子

文献丨转录组RNA seq——青年阶段!

文献丨高通量表型组图像识别与GWAS

笔记丨ggplot2热图入门学习笔记

笔记丨PCA分析基本知识和数学原理

图书丨R语言、Python、Linux

超算丨数据分析时电脑配置不够用?试试

软件 | 如何进行基因家族分析?TBtools

服务器丨家用联想台式机重装Linux系统

转录组丨一套完整的操作流程案例

相关文章
|
2月前
|
缓存 供应链 芯片
电子元件类商品 item_get - 商品详情接口深度分析及 Python 实现
电子元件商品接口需精准返回型号参数、规格属性、认证及库存等专业数据,支持供应链管理与采购决策。本文详解其接口特性、数据结构与Python实现方案。
|
7月前
|
人工智能 Python
[oeasy]python083_类_对象_成员方法_method_函数_function_isinstance
本文介绍了Python中类、对象、成员方法及函数的概念。通过超市商品分类的例子,形象地解释了“类型”的概念,如整型(int)和字符串(str)是两种不同的数据类型。整型对象支持数字求和,字符串对象支持拼接。使用`isinstance`函数可以判断对象是否属于特定类型,例如判断变量是否为整型。此外,还探讨了面向对象编程(OOP)与面向过程编程的区别,并简要介绍了`type`和`help`函数的用法。最后总结指出,不同类型的对象有不同的运算和方法,如字符串有`find`和`index`方法,而整型没有。更多内容可参考文末提供的蓝桥、GitHub和Gitee链接。
196 11
|
10月前
|
测试技术 Python
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
489 31
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
|
8月前
|
存储 C语言 Python
[oeasy]python077_int类型怎么用_整数运算_integer_进制转化_int类
本文主要讲解了Python中`int`类型的应用与特性。首先回顾了`int`词根的溯源,探讨了整型变量的概念及命名规则(如匈牙利命名法)。接着分析了整型变量在内存中的存储位置和地址,并通过`type()`和`id()`函数验证其类型和地址。还介绍了整型变量的运算功能,以及如何通过`int()`函数将字符串转化为整数,支持不同进制间的转换(如二进制转十进制)。此外,文章提及了关键字`del`的使用场景,对比了Python与C语言中`int`的区别,并总结了整型与字符串类型的差异,为后续深入学习奠定基础。
179 1
|
11月前
|
数据采集 存储 XML
python实战——使用代理IP批量获取手机类电商数据
本文介绍了如何使用代理IP批量获取华为荣耀Magic7 Pro手机在电商网站的商品数据,包括名称、价格、销量和用户评价等。通过Python实现自动化采集,并存储到本地文件中。使用青果网络的代理IP服务,可以提高数据采集的安全性和效率,确保数据的多样性和准确性。文中详细描述了准备工作、API鉴权、代理授权及获取接口的过程,并提供了代码示例,帮助读者快速上手。手机数据来源为京东(item.jd.com),代理IP资源来自青果网络(qg.net)。
|
Java C++ Python
Python基础---类
【10月更文挑战第10天】Python类的定义
195 2
|
索引 Python
python-类属性操作
【10月更文挑战第11天】 python类属性操作列举
141 1
|
程序员 Python
Python中Lambda表达式的优缺点及使用场景
Python中Lambda表达式的优缺点及使用场景
402 0
|
存储 算法 API
Python学习五:函数、参数(必选、可选、可变)、变量、lambda表达式、内置函数总结、案例
这篇文章是关于Python函数、参数、变量、lambda表达式、内置函数的详细总结,包含了基础知识点和相关作业练习。
185 0
|
Python
Python中的Lambda表达式
Python中的Lambda表达式
390 3

推荐镜像

更多
下一篇
oss云网关配置