Python函数、类和对象、流程控制语句if-else while的讲解及演示(图文解释 附源码)

简介: Python函数、类和对象、流程控制语句if-else while的讲解及演示(图文解释 附源码)

一、函数

函数是完成某个功能的代码段,可被其他代码调用,调用的代码可以将数据传递给函数,函数可将对数据的处理结果返回给调用代码。

def mysubt( a, b = 0 ): # 定义一个自己的减法函数,第二个参数为默认值为0的默认参数
    c = a - b
    return c
c = mysubt( 2, 1 ) # 按函数定义的参数顺序传入数据
c
>>>  1
d = mysubt(b = 1, a = 2) # 用赋值符号指定每个参数的值来传入数据
d
>>>  1
e = mysubt( 2 ) # 默认参数采用默认值,不输入新值
e
>>>  2
def changeInt ( k ):
    k += 1
    print( "函数内部的值:%d " % ( k ))
    return
k = 1106
changeInt( k )
print( "函数外部的值:%d " % ( k ))
>>>  函数内部的值:1107 
     函数外部的值:1106
def changeList ( mylist ):
    mylist[0] = 0
    return
newlist = [ 1, 2, 3 ]
changeList( newlist )
newlist
>>>  [0, 2, 3]
mynewsubt = lambda a, b: a - b
mynewsubt( 2, 1 )
>>>  1

内置函数

数学运算类内置函数有求绝对值函数abs、求幂函数pow、求四舍五入函数round、对集合求和函数sum、取商和余数函数divmod、创建复数函数complex、产生一个序列函数range、转换成浮点数函数float、转换成整数函数int、转换为8进制函数oct、转换为16进制函数hex、转换为2进制函数bin、转换为布尔类型函数bool等。

集合操作类内置函数有创建字典函数dict、创建集合函数set、创建元组函数tuple、转换为列表函数list、生成一个迭代器函数iter、排序函数sorted、返回集合中的最大值函数max、返回集中的最小值函数min、返回集合长度函数len、遍历元素执行操作函数map/转换为字符串函数str、格式化输出字符串函数format等

IO操作类内置函数除了print和input外,还有创建文件的file函数和打开文件的open函数等。

其他常用内置函数还有对类和对象进行操作的函数以及返回变量类型函数type等

二、类和对象

对象

对象有属性和行为,属性可以表征对象的特征和状态,行为代表对象的功能。具有相同类型属性和行为的对象,用一个“类(class)”来抽象。在Python里,把类的行为的实现称为方法,方法的定义和应用类似于函数。

一个类是某一类对象的抽象,因此,该类对象的创建要依据该类来创建,称为实例化。因为str类是内置的,Python提供了更加方便和直观的对象创建方法,用赋值方式来创建字符串对象。

a = str( "aaaa" ) # 从类的实例化来创建对象
b = "aaaa" # 作为内置类型,可以用赋值运算符的方式创建对象
a == b
>>>   True
a.__eq__(b)
>>>   True

Python中的对象由对象标识符(identity)、类型(type)和值(value)组成。

Python的机器学习扩展库将机器学习的算法已经封装为各种类,只需要将类实例化,并按使用要求使用即可。

字符串类str的常用方法有:在字符串中查找指定子串方法find、字符串格式化方法format、检查是否只包含十进制数字方法isdecimal、检查是否只包含数字方法isdigit、检查是否只包含空格方法isspace、合并字符串方法join、子串替换方法replace、去掉头尾空格方法strip、分隔字符串方法split等等。

mystring = "   mystring   " # 头尾有空格
mystring.strip() # 用strip方法去掉头尾的空格
>>>  'mystring'
>>>   '__class__',
>>>   '__contains__',
>>>   '__delattr__',

数据类型的整数类int、浮点数类float、复数类complex和布尔类bool的方法主要是支持各类运算符的专有方法,如加法__add__、减法__sub__等。

列表类型的list类的常用方法有:向列表的末尾添加元素方法append、清除列表方法clear、拷贝列表方法copy、返回子元素出现的次数方法count、返回子元素的索引方法index、在指定索引处插入元素方法insert、删除列表中一个元素方法pop、从列表中删除指定元素方法remove、反转列表方法reverse、列表元素排序方法sort等。

mylist = [ 1, 2, 3, 4, 5 ]
mylist.reverse()
mylist
>>>   [5, 4, 3, 2, 1]

因为元组是不可变的序列,所以元组类型的tuple类没有可对元素进行修改的方法,其他方法与list类相似。

集合类型的set类的常用方法有:添加元素方法add、移除所有元素方法clear、拷贝集合方法copy、删除集合中指定元素方法discard、返回集合交集方法intersection、随机移除元素方法pop、移除指定元素方法remove、返回两个集合的并集方法union等。

字典类型的dict类的常用方法有:删除字典内所有元素方法clear、返回指定键的值方法get、判断键是否在字典中的方法key_in_dict、删除指定键对应的元素方法pop等。

类的创建

类的创建和使用主要涉及类定义、构造方法、继承和方法重写。

class circlar_area:         # 定义一个计算圆面积的类
    pi = 3.14                 # 圆周率是类的属性
    def __init__(self, r): # 类的构造方法
        self.r = r            # 通过构造方法设置圆的半径
    def compute(self):       # 该方法计算圆的面积
        return self.pi * self.r**2    
circle = circlar_area(1)    # 实例化类得到对象,通过构造方法设置了圆的半径
circle.compute()              # 调用对象的compute方法得到圆的面积
>>> 3.14 
class round_area(circlar_area): # 继承circlar_area类,得到计算圆环面积的新类
    def __init__(self, r, R):     
        circlar_area.__init__(self, r) # 构造方法里要调用父类的构造方法
        self.R = R                   # 构造方法里设置圆环的另一个半径
    def compute(self):        # 重写compute方法,实现计算圆环的面积
        return abs((self.pi * self.R**2) - (self.pi * self.r**2)) 
round_ = round_area(1, 2) # 实例化
round_.compute()
>>> 9.42

三、流程控制

下面是if-else分支结构

if condition:
    statements1
if condition:
    statements1
else:
    statements2
if condition1:
    statements1
elif condition2:
    statements2
else:
    statements3

下面是while循环结构

while condition:
    statements
while condition:
    statements1
else:
    statements2
for var in sequence:
    statements
for var in sequence:
    statements1
else:
    statements2

创作不易 觉得有帮助请点赞关注收藏~~~

相关文章
|
20天前
|
存储 数据处理 Python
Python如何显示对象的某个属性的所有值
本文介绍了如何在Python中使用`getattr`和`hasattr`函数来访问和检查对象的属性。通过这些工具,可以轻松遍历对象列表并提取特定属性的所有值,适用于数据处理和分析任务。示例包括获取对象列表中所有书籍的作者和检查动物对象的名称属性。
27 2
|
1月前
|
缓存 监控 算法
Python内存管理:掌握对象的生命周期与垃圾回收机制####
本文深入探讨了Python中的内存管理机制,特别是对象的生命周期和垃圾回收过程。通过理解引用计数、标记-清除及分代收集等核心概念,帮助开发者优化程序性能,避免内存泄漏。 ####
47 3
|
2月前
|
JSON 开发工具 git
基于Python和pygame的植物大战僵尸游戏设计源码
本项目是基于Python和pygame开发的植物大战僵尸游戏,包含125个文件,如PNG图像、Python源码等,提供丰富的游戏开发学习素材。游戏设计源码可从提供的链接下载。关键词:Python游戏开发、pygame、植物大战僵尸、源码分享。
|
3月前
|
索引 Python
python-类属性操作
【10月更文挑战第11天】 python类属性操作列举
33 1
|
3月前
|
Java C++ Python
Python基础---类
【10月更文挑战第10天】Python类的定义
30 2
WK
|
3月前
|
Python
Python类命名
在Python编程中,类命名至关重要,影响代码的可读性和维护性。建议使用大写驼峰命名法(如Employee),确保名称简洁且具描述性,避免使用内置类型名及单字母或数字开头,遵循PEP 8风格指南,保持项目内命名风格一致。
WK
24 0
|
3月前
|
存储 安全 Serverless
Python学习四:流程控制语句(if-else、while、for),高级数据类型(字符串、列表、元组、字典)的操作
这篇文章主要介绍了Python中的流程控制语句(包括if-else、while、for循环)和高级数据类型(字符串、列表、元组、字典)的操作。
50 0
|
3月前
|
程序员 开发者 Python
深度解析Python中的元编程:从装饰器到自定义类创建工具
【10月更文挑战第5天】在现代软件开发中,元编程是一种高级技术,它允许程序员编写能够生成或修改其他程序的代码。这使得开发者可以更灵活地控制和扩展他们的应用逻辑。Python作为一种动态类型语言,提供了丰富的元编程特性,如装饰器、元类以及动态函数和类的创建等。本文将深入探讨这些特性,并通过具体的代码示例来展示如何有效地利用它们。
60 0
|
3月前
|
Python
Python中的类(一)
Python中的类(一)
23 0
|
1月前
|
人工智能 数据可视化 数据挖掘
探索Python编程:从基础到高级
在这篇文章中,我们将一起深入探索Python编程的世界。无论你是初学者还是有经验的程序员,都可以从中获得新的知识和技能。我们将从Python的基础语法开始,然后逐步过渡到更复杂的主题,如面向对象编程、异常处理和模块使用。最后,我们将通过一些实际的代码示例,来展示如何应用这些知识解决实际问题。让我们一起开启Python编程的旅程吧!