Python 函数

函数能提高应用的模块性,和代码的重复利用率。我们之前已经使用过一些Python提供的内建函数,比如print()。当然我们也可以自己创建函数,叫做自定义函数。

Python 函数定义规则

函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 ()。

任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。

函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。

函数内容以冒号起始,并且缩进。

return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。

Python 函数定义的语法

Python 定义函数使用 def 关键字,一般格式如下:

def 函数名(参数列表):

函数体

Python 函数的定义示例

# 例:定义函数,输出”Hello World”

def hello():

print("Hello World!")

Python 函数的调用

函数不调用就不会执行。调用函数通过函数名完成。

# 例:调用我们之前定义的hello函数:

def hello() :

print("Hello World!")

hello()

输出:

Hello World!

Python 函数的参数传递

def hello(name) :

print("Hello {}".format(name))

hello('Mrzhang')

输出:

Hello Mrzhang

Python 函数关键字参数

def hello(name,age=18) :

print("Hello my name is {},今年{}岁".format(name,age))

hello('Mrzhang')

hello('Mrzhang',22)

hello(age=66,name='Mrli')

输出:

Hello my name is Mrzhang,今年18岁

Hello my name is Mrzhang,今年22岁

Hello my name is Mrli,今年66岁

注:参数中传入不可变类型的数据,相当于将原数据复制了一份.

注:参数中传入可变类型的数据,可以对原有数据进行操作,也可以重新赋值.

Python 函数的return语句

def hello(name) :

print("Hello {}".format(name))

return '我是一个字符串返回值'

hello('Mrzhang')

print('-----我是一条分割线-----')

print(hello('Mrli'))

输出:

Hello Mrzhang

-----我是一条分割线-----

Hello Mrli

我是一个字符串返回值

变量作用域

Python 中只有模块(module),类(class)以及函数(def、lambda)才会引入新的作用域,其它的代码块(如 if/elif/else/、try/except、for/while等)是不会引入新的作用域的,也就是说这些语句内定义的变量,外部也可以访问.

# 例:

x = int(10) # python内置作用域

y = 2 # 当前模块中的全局变量Global

def outfuction():

outfx = 2 # 外层作用域

def infunction():

infx = 3 # 局部作用域

全局变量和局部变量

定义在函数内部的变量拥有一个局部作用域,定义在函数外的拥有全局作用域。局部变量只能在其被声明的函数内部访问,而全局变量可以在整个程序范围内访问。调用函数时,所有在函数内声明的变量名称都将被加入到作用域中。

# 例:

total = 0; # 这是一个全局变量

def sum( arg1, arg2 ):

total = arg1 + arg2 # total在这里是局部变量.

print ("函数内是局部变量 : ", total)

return total

sum( 10, 20 )

print ("函数外是全局变量 : ", total)

内置函数

模块

模块的概念

模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py

模块可以被别的程序引入,以使用该模块中的函数等功能。这也是使用 python 标准库的方法。

模块的使用

import 语句

import os # 导入系统内置模块 os

print (os.listdir()) # 调用os模块的listdir()方法 遍历当前文件夹的所有文件

输出:

['test.py'] # 你输出的和我可能不太一样,需要查看你当前目录下有哪些文件

自建一个模块 并写入两个方法 一个说你好 一个说拜拜

然后导入 并调用两个方法

通过绝对路径调用模块

from…import 语句

导入模块中的指定 部分/方法 到当前命名空间下

from tool.test1 import sayHello,sayBye

sayBye()

sayHello()

输出:

Bye

hello

如下图:

Python dir()函数

内置的函数 dir() 可以找到模块内定义的所有名称。以一个字符串列表的形式返回.

python函数体以冒号起始、并且是缩进格式的_Python基础第三课相关推荐

  1. python函数体以冒号起始、并且是缩进格式的_函数体以冒号起始,并且是缩进格式的。(3.0分)_学小易找答案...

    [判断题]如果想在函数中修改全局变量,需要在变量的前面加上global关键字(3.0分) [判断题]全局变量定义在函数外,可以在整个程序范围内访问.(3.0分) [判断题]使用return语句可以返回 ...

  2. python函数体以冒号起始、并且是缩进格式的_函数体以冒号开始,并且是缩进格式的。_学小易找答案...

    [单选题]在下面的代码里 using System; class A { public A() { PrintFields(); } public virtual void PrintFields() ...

  3. Python基础第三课-基本数据类型

    Python基础第三课-基本数据类型 1.几个基本概念 1.1 表达式 1.2 语句 1.3 程序(program) 1.4 函数(function) 2.标识符 2.1 关键字 2.2 标识符概念 ...

  4. 在多线程 Python 程序中实现多目标不同缩进格式的 logging

    <本文的原始位置: http://bluegene8210.is-programmer.com/posts/21754.html> ---- 带有动态缩进格式的自定义 logging 机制 ...

  5. python代码块使用缩进来表示_python 基础语法

    1.编码 默认情况下,Python3源码文件以UTF-8编码,所有字符串都是unicode字符串.当然你也可以为源码文件指定不同的编码: # -*- coding: cp-1252 -*- 上述定义允 ...

  6. python赋值语句的一般格式为_Python 基础语法

    Python 基础语法 Python 语言与 Perl,C 和 Java 等语言有许多相似之处.但是,也存在一些差异. 在本章中我们将来学习 Python 的基础语法,让你快速学会 Python 编程 ...

  7. python缩进编码教程_python基础语法教程:行与缩进

    缩进 使用缩进来表示代码块,不需要使用大括号 {} . 同一个代码块的语句必须包含相同的缩进空格数. 多行语句 Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠()来实现多行语 ...

  8. python组合类型有哪三种_Python基础语法三组合数据类型

    一.列表(Lists) 列表属于Python中的序列类型,它是任意对象的有序集合,通过 " 位置 "或者 " 索引 " 访问其中的元素,它具有可变对象.可变长度 ...

  9. python初学火车座位判断_Python学习第三课 判断(if)语句

    判断(if)语句 目标 ● if 语句体验 ● if 语句进阶 ● 综合应用 01. if 语句体验 1.1 if 判断语句基本语法 在Python中,if 语句就是用来进行判断的,格式如下: if ...

最新文章

  1. Mysql的row_format(fixed与dynamic)
  2. 给你一个K8S的“发行版”
  3. window 2003 linux,一步步从Windows 2003 DNS 移植到Linux下
  4. 内构函数java_Android JNI参数传递
  5. 洛谷P5733、P5734、P5735、P5739题题解(Java语言描述)
  6. XML Schema语法规则
  7. 仅用38天 2021年快递业务量已超100亿件
  8. 如何写出有效的引流文案?
  9. python对于文件的读取和重建
  10. pe显示linux分区文件,找到了linux分区顺序错乱修复方法
  11. 爬虫练习-爬取起点中文网小说信息
  12. IMU与GPS传感器ESKF融合定位(转载)
  13. GPS定位(四)-经纬度格式转换-(互转 度转度分秒 度分秒转度……)
  14. python 爬取拉钩网数据
  15. 2015届互联网名企校招网址一览表
  16. 国产化信创CPU、操作系统、数据库、中间件笔记
  17. JS实现简单的网页文本转语音阅读
  18. 第十三讲 面向对象(下)——Seasons in the sun
  19. ASP标准MD5加密签名函数代码
  20. 通达信版弘历软件指标_通达信弘历指标公式

热门文章

  1. Skyscraper
  2. 2.2.5 操作系统之调度算法(时间片轮转调度算法、优先级调度算法、多级反馈队列调度算法)
  3. mysql8.0.20忘记密码_mysql8.0.19忘记密码的完美解决方法
  4. C/Cpp / #define
  5. python svn模块_使用Python实现一键批量更新SVN/Git模块的脚本
  6. 长春理工大学计算机学院分数线,2021长春理工大学录取分数线-长春理工大学分数线-2021长春理工大学录取查询网址...
  7. uos系统不激活能用吗_国产统一操作系统UOS真的能代替window系统吗? UOS上手体验...
  8. 【atcoder】Enclosed Points [abc136F]
  9. pyenv 让 python 版本完美切换
  10. 记一次性能优化,限制tcp_timewait数量,快速回收和重用