Python学习日记(二:函数和逻辑操作)

简介: Python中的函数和逻辑操作至关重要。函数包括可变和不可变参数。

 概述:

函数和逻辑操作在python中的地位是非常重要的,当然不只是在python中,几乎每一门编程语言都会用到这两样,所以打好基础对我们以后的学习非常重要,Python中的函数有很多都是已经封装好的,我们可以自己用语言去实现一个函数,这样不仅让我们可以有更好解决问题的能力,还可以对函数有更深的了解。

函数:

首先我们要知道python中的参数分为两种类型,分别是可变和不可变类型。

不可变类型:变量赋值 a=5 后再赋值 a=10,这里实际是新生成一个 int 值对象 10,再让 a 指向它,而 5 被丢弃,不是改变a的值,相当于新生成了a。

可变类型:变量赋值 la=[1,2,3,4] 后再赋值 la[2]=5 则是将 list la 的第三个元素值更改,本身la没有动,只是其内部的一部分值被修改了。

不可变类型示例

#不可变对象
def ChangeInt(Number):
    Number = 100
    return
Number_ture = 90
ChangeInt(Number_ture)
print(Number_ture) #打印结果 90 因为Python本身并不存在一些值传递还是地址传递,所有的对象也并没有固定的类型,我们可以理解为是修改了一个复制过来的,并不能影响Number_true本身

image.gif

可变类型示例

#可变对象
def ChangeList(MyList):
    MyList.append([1,2,3,4])
    return
MyList = [10,10,10]
ChangeList(MyList)
print(MyList) #打印结果[10, 10, 10, [1, 2, 3, 4]]

image.gif

默认参数

我们给函数的形参赋值,而这个值也可以被称为默认参数。示例如下

def printinfo(name, age = 35):
    print(name,age)
    return
printinfo(50,"lucy")

image.gif

值得一提的是如果形参有两个我们至少要填一个参数,否则会报错!

不定长参数

我认为python里面一个非常厉害的功能,不定长参数,他会把带星号的输入参数当作元组去处理,这样我们就可以实现输入一个或者多个参数,非常方便。但是好处往往也对应着坏处,API的封装同时对应的就是时间的消耗,所以说平时我们对于代码的要求还是需要考虑一些时间方面,养成好习惯。

#不定长参数 带星号的输入参数被当作元组处理
def functiom_indeterminacy(arg, *vartuple):
    print(arg)
    for var in vartuple:
        print (var)
    return
functiom_indeterminacy(10,20,30) #打印结果 10 20 30
functiom_indeterminacy(10,20,30,40,50,60) #打印结果 10 20 30 40 50 60

image.gif

匿名函数

这是一个不用def就能实现的函数,主要依靠与lambda关键字。

#匿名函数
sum = lambda number1,number2:number1 + number2
print(sum(10,20)) #打印结果30

image.gif

return

我们也可以返回一些值,这个比较容易理解,大家看看即可

#return
def functionSum(number1,number2):
    All = number1 + number2
    return All
AllResult = functionSum(20,20)
print(AllResult) #打印结果 40
#值得一提的是在函数中定义的变量是局部变量,在函数外是不能被访问的,这一点在C语言中非常常见,相反函数定义的变量就是全局变量

image.gif

逻辑操作:

逻辑运算符

#逻辑运算符
c语言解释法:#在Python种,&&是or,||是and,!是not
or是一真为真 例如tureorfalse 则返回的是true
and是一假为假 例如  false and true 则返回的是false true and true 返回的则是true

image.gif

IF语句

if语句就是当条件为真时执行下面的语句,否则就执行else里面的语句,当然我们也可以if else组合起来使用

#if
格式:
if condition:
    语句
if True:
    print("True")
    print("True1")
else:
    print("false")
name = "ruler"
if name == "ruler":
    print("ruler")
elif name == "lucy"
    print("lucy")
else:
    print("not ruler")
#打印结果
True
True1
ruler

image.gif

while语句

while语句在python种是非常重要和非常常用的语句。

while condition:
    语句
#while
a = 1
while a!=10:
    print(a)
    a+=1
#打印结果 1 2 3 4 5 6 7 8 9

image.gif

break和continue

break和continue是为了控制循环的一个手段,break是跳出本次循环,并不再进入,而continue则是完成本次循环,然后继续下一次循环

#break
number = 5
while(number > 2):
    number-=1
    if(number == 3):
        break
    print("我是打印的内容")
#打印内容 我是打印的内容 只有一次 因为当number等于3的时候就跳出了循环,并且不再进入
#continue
number = 5
while(number > 2):
    number-=1
    if(number == 3):
        continue
    print("我是打印的内容")
#打印内容 我是打印的内容
我是打印的内容  有两次,因为continue跳出本次循环后会继续进入下次循环

image.gif

for和pass

for循环在python种就是为了便利一些数组,非常的方便

Python pass 是空语句,是为了保持程序结构的完整性。

pass 不做任何事情,一般用做占位语句。

Python 语言 pass 语句语法格式如下:

#for and pass
for letter in "python":
    print("当前字母:%s" %letter)
fruits = ["banana","apple","mango"]
for fruit in fruits:
    print("当前水果:%s" %fruit)
for index in range(len(fruits)):
    print("当前水果:%s" %fruits[index])
for letter in "python":
    if letter == "o":
        pass
        print("pass")
    print("当前字母:%s" %letter)
#打印内容
当前字母:p
当前字母:y
当前字母:t
当前字母:h
当前字母:o
当前字母:n
当前水果:banana
当前水果:apple
当前水果:mango
当前水果:banana
当前水果:apple
当前水果:mango
当前字母:p
当前字母:y
当前字母:t
当前字母:h
pass
当前字母:o
当前字母:n

image.gif

image.gif 编辑


相关文章
|
5天前
|
机器学习/深度学习 算法 Python
使用Python实现深度学习模型:元学习与模型无关优化(MAML)
使用Python实现深度学习模型:元学习与模型无关优化(MAML)
22 0
使用Python实现深度学习模型:元学习与模型无关优化(MAML)
|
5天前
|
缓存 监控 程序员
Python中的装饰器是一种特殊类型的声明,它允许程序员在不修改原有函数或类代码的基础上,通过在函数定义前添加额外的逻辑来增强或修改其行为。
【6月更文挑战第30天】Python装饰器是无侵入性地增强函数行为的工具,它们是接收函数并返回新函数的可调用对象。通过`@decorator`语法,可以在不修改原函数代码的情况下,添加如日志、性能监控等功能。装饰器促进代码复用、模块化,并保持源代码整洁。例如,`timer_decorator`能测量函数运行时间,展示其灵活性。
15 0
|
1天前
|
数据采集 SQL 关系型数据库
Python学习路线【对标大厂Python开发工程师的招聘要求,并推荐优质免费资源】打卡学习不迷茫
Python学习路线【对标大厂Python开发工程师的招聘要求,并推荐优质免费资源】打卡学习不迷茫
29 14
|
6天前
|
供应链 数据挖掘 Python
后劲真大,我愿称之为学习python的“圣经”
很多小伙伴都在学习Python,但是爱看书的找不到适合自己的,这本书可以完美的解决你的问题,还能帮助到很多需要处理数据,做Excel自动方面的。
|
2天前
|
Python
|
2天前
|
存储 安全 编译器
Python学习日记(一:List、Tuple、dictionary)
1.列表、元组和字典都是序列 2.列表字典可以修改和删除序列中的某个元素,而元组就是一个整体,不能修改和删除,一定要修改或删除的话,只能修改和删除整个元组。 3.既然元组不能删除和修改,有什么作用呢? 1.元组比列表遍历速度快,因为元组是一个整体,运算效率高; 2.正是因为不能修改,元组可以保护不需要修改的数据,可以使代码结构更安全。
|
2天前
|
机器学习/深度学习 TensorFlow 算法框架/工具
使用Python实现深度学习模型:迁移学习与领域自适应教程
【7月更文挑战第3天】 使用Python实现深度学习模型:迁移学习与领域自适应教程
7 0
|
5天前
|
SQL 分布式计算 DataWorks
DataWorks产品使用合集之对于Hologres的Python查询,该如何操作
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
12 0
|
7天前
|
机器学习/深度学习 人工智能 程序员
探索Python宝库:从基础到技能的干货知识(数据类型与变量+ 条件与循环+函数与模块+文件+异常+OOP)
探索Python宝库:从基础到技能的干货知识(数据类型与变量+ 条件与循环+函数与模块+文件+异常+OOP)
7 0
|
7天前
|
SQL Java 数据库连接
使用Python通过JDBC操作数据库(达梦数据库)
使用Python通过JDBC操作数据库(达梦数据库)
28 0

热门文章

最新文章