首页 > 其他分享 >函数

函数

时间:2023-04-01 16:25:17浏览次数:23  
标签:__ 函数 num 模块 print 变量

一、介绍

  把具有独立功能的代码块组织为一个小模块,在需要的时候调用

  作用:对具备相同逻辑的代码进行封装,提高代码编写效率,实现对代码的利用

  好处:减少代码冗余,提高代码运行效率

  函数必须先定义,后调用

 

二、函数的文档注释

  作用:对函数的作用和使用方法进行说明,比如有哪些参数、返回值等

  书写位置:在def 下方,使用三对引号来书写

  查看:1在函数名上,使用快捷键ctrl + q 查看。2、在函数名上,使用 Ctrl + B 跳转到函数定义的地方查看。 3、直接在函数上按 ctrl 键查看

 

三、定义带参数的函数

  1、例子

def sun_num(a,b):
    c = a + b
    print(c)
sun_num(10,20)

 

四、函数的嵌套调用

  1、在一个函数里面去调用另一个函数

def func():
    print("我是函数一")

def func1():
    print("我先执行")
    print("我是函数二")
    func()
func1()

 

五、函数的返回值

  1、函数执行的结果

    在一个函数中,想要返回一个数据(想要有返回值),需要使用 return 关键字

    在函数中可能通过各种代码,得到的数据结果,想要在函数外部使用,就需要使用其返回值。执行到返回值就会停止

#设计一个函数,获取里面较大的数
def func(a,b):
   if a > b :
       return a
   else:
       return b
print(func(10,20))

 

六、模块和包

  1、模块

    每一个以 “.py ” 结尾的python代码文件都是一个模块

    在模块中,别人书写好的功能,我们可以拿过来直接使用

  2、导入

    1、import 模块名

    2、from 模块名 import 功能名      (导入指定功能)

#方式一
import random
s = random.randint(1,10)
print(s)

#方式二
from random import randint
s1 = randint(1,5)
print(s1)

  3、导入模块时,会执行模块中的代码

    如果在导入模块的时候,模块中的部分代码不行被执行,可以使用 __name__ 来解决,此变量是Python解释器里内置的变量

    在模块中,右键直接运行代码文件, __name__ 变量的值是 __main__

    如果是被导入运行代码文件, __name__变量的值 是 模块名(文件名)

    如果不想执行导入模块的代码;就可把代码写在:if __name__ == "__main__":下面。

def num(a,b):
    c = a + b
    return c
print(num(10,20),__name__)
结果为:30 __main__

 

  4、包:将多个模块放在一个目录中集中管理,并在这个包中创建一个__init__.py文件(可以什么都不写),就是一个包

    导入

      1、import 包名 . 模块名     (使用:包名 . 模块名 . 工具名)

      2、from 包名 import 模块名    (使用:模块名 . 工具名)

      3、import 包名 . 模块名 import 工具名  (工具名)

 

七、变量的类型

  1、引用

    定义变量的时候,变量和数据 都会在内存开辟空间

    变量所对用的内存空间中存储的是 数据所在的内存地址 

    变量中保存数据地址,就称为地址,Python中所有数据的传递,传递都是引用(即地址)

    赋值运算符(=),会改变变量的引用。即只有等号修改变量的引用

    可以使用 id 查看变量的引用

a = 1  #本质,是将数据1 的地址保存到变量a 中,
b = a  #本质,将变量a 中的引用保存到 b 中,
#此时a,b的 id 是一样的
a = 2  #将数据2的地址保存到变量a中,只改变a的引用,即改变a的值,并不改变b的引用
print(a)   2
print(b)   1

 

  2、可变类型与不可变类型

    根据内存中的数据是否允许修改,将数据类型分为可变类型和不可变类型(简单理解:不使用等号修改数据类型)

    可变:列表、字典、集合

    不可变:字符串、数字(int,float,bool)、元组

  3、局部变量和全局变量

    局部变量:在函数内部定义的变量

         只能在当前函数内部使用,且可以在不同函数定义名字相同的局部变量,

         生命周期:在函数执行的时候才被创建,函数执行结束就会被删除

         想要在函数外部使用:则需要使用return值

    全局变量:在函数外部定义的变量

         可以在任意函数内访问

         想要在函数内部修改全局变量的引用,需要使用 global 关键字声明

         如果在函数内部出现和全局变量一样的变量名,在函数内部使用的是局部变量

         生命周期:代码执行的时候创建,执行结束销毁

g_num = 10
def func1():
    print(g_num)    #使用全局变量

def func2():
    g_num = 20    #定义局部变量
    print(g_num)

def func3():
    global g_num      #声明为全局变量 ,只要执行了这个函数,那么就会将全局变量改为30
    g_num = 30
    print(g_num)
if __name__ == "__main__":
    print(g_num)    #10
    func1()     #10
    func2()     #20
    func3()     #30
    func1()     #30

 

标签:__,函数,num,模块,print,变量
From: https://www.cnblogs.com/wmtly/p/17278786.html

相关文章

  • 实验3 函数应用编程
      task1#include<stdio.h>#include<stdlib.h>#include<time.h>#include<windows.h>#defineN80voidprintf_text(intline,intcol,chartext[]);voidprintf_spaces(intn);voidprintf_blank_lines(intn);intmain(){intlin......
  • stat函数详解
    stat函数详解作用:获取文件信息头文件:#include<sys/types.h>#include<sys/stat.h>#include<unistd.h>函数原型:**intstat(constcharpath,structstatbuf)返回值:成功返回0,失败返回-1;参数:文件路径(名),structstat类型的结构体structstat结构体详解:structstat{......
  • 类型、类型变量、多态函数
    类型Haskell有一个静态类型系统,每个表达式的类型在编译时是已知的,这将产生更安全的代码与Java或C不同,Haskell有类型推断,不用显式编写类型理解类型系统是掌握Haskell的一个非常重要的部分:type命令可以检查表达式的类型,如下:type'a':typeTrue:type"hello":type(True,'......
  • 实验3 函数应用编程
    1.实验任务1task1.c1#include<stdio.h>2#include<stdlib.h>3#include<time.h>4#include<windows.h>5#defineN8067voidprint_text(intline,intcol,chartext[]);//函数声明8voidprint_spaces(intn);//函数声明9voidprint_bla......
  • 《Mysql基础》【Mysql函数 mysql数据类型】 编程入门 学习分享 【公开免费】
    -- --mysql数据库程序设计笔记:gb2312是国标,中国字库。一个汉字2个字节。utf8国际通用标准。包含gb2312;外键只能引用主键和候选键。外键只可以在InnoDB中使用。字段约束:字段类型后可加:check(多个列判断条件)列为:column用col1、col2....代替一、mysql函数:聚合函数:1、......
  • excel函数用法小结
    Excel函数使用小结if与数组的结合使用——多条件查询多条件统计查询: 获取: 广州战区、A类的数据最小值: =MIN(IF(($A$3:$A$21=$K$2)*($B$3:$B$21=$J$2),$C$3:$C$21)) 注:if函数,在使用数组结合的过程中,出现多个条件判断时,不可以使用and函数,需将【and函数】换成【*】号 ......
  • Linux系统下进程回收--wait()函数
    进程回收在每个进程退出的时候,内核释放该进程所有资源‘包括打开的文件、占用的内存等。但是仍然会保存一定的信息,这些信息主要是进程控制块PCB的信息(包括进程号、退出状态、运行时间等)。父进程可以调用wait()或waitpid()函数得到它的退出状态,同时彻底清除这个进程。wait()......
  • C语言逆向汇编——参数局部变量、函数堆栈、调用约定和内嵌汇编码
    第一节1.1C语言1、注意参数和局部变量在堆栈中的存储方式2、参数在调用函数前就已经存入堆栈,从[EBP+8]、[EBP+C]、……开始。3、局部变量是在调用函数后,存入缓冲区里,从[EBP-4]、[EBP-8]、……开始4、函数运算得到的结果,通常存在EAX里。        第一......
  • lag与lead函数 oracle_11g
    lag与lead函数oracle_11glag与lead函数都可以实现跨行引用,语法如下:lag(col[,n1][,n2])over([分区子句]排序子句)lead(col[,n1][,n2])over([分区子句]排序子句)语法注解:参数: col,n1,n2 lag可以返回按排序子句排序后指定列的前n1行的值(如果不指定n1,则默......
  • 窗口函数 oracle_11g
    窗口函数oracle_11g数据库中的窗口函数也叫分析函数,顾名思义,窗口函数可用于一些复杂的统计分析计算,另外,窗口函数还具有优越的性能表现,可以节约时间和资源,因此窗口函数经常用于数据仓库和大型报表应用中。窗口函数的结构窗口函数由四部分组成,分别是分析函数名、分区子句、排......