函数

定义函数

1、意义:函数是实现某个功能的一些代码,提高代码的复用性。

2、定义:用def关键字定义函数,

3、函数组成:函数由函数名、形参、函数体、调用函数(里面会有函数体)组成

4、要使用函数,必须要调用它

5、示例函数:

定义一个简单的函数,里面只有函数名、函数体、调用函数组成

形参与实参

形参:在函数名字后面括号里的值,实参是调用函数时传递给函数的信息

实参:实参是在调用函数是,函数名字后面括号里的值

示例:定义一个写文件的函数

定义一个读文件的函数

返回值:在函数中,可使用return语句将值返回到调用函数的代码行,如果不写return将返回none

return的作用:把函数处理的结果返回。结束函数,函数里面遇到return,就立刻结束函数

传递参数

1、默认值参数:在函数定义时,可给形参指定一个默认值,在函数调用中给形参提供了实参时,Python将使用指定的实参值,否则将使用指定的默认值

2、位置实参:在函数调用时,必须将每个实参都关联到函数定义中的每一个形参,必须按照形参位置来传递实参,实参为必传。

3、关键字实参:在函数调用时,传的实参要以 名称-值得形式来传递参数。关键字实参的顺序无关紧要,不用和形参对应上

4、可变参数(传递任意数量的实参):定义形参时,用 *name ,调用函数时,实参非必填,不限制参数个数

参数是放在元组里面的。

5、向函数传递列表、元组、集合:元素个数要与形参个数对应上,调用函数时语法:函数名字(*listname)

6、传递任意数量的关键字实参:非必传,不限制个数,会把传过来的关键字参数放到一个字典里面,传参的时候必须用key=value形式来传

7、向函数传递字典,字典里的key要与函数中的形参个数对应上,语法:函数名(**dictname)

局部变量与全局变量

1、局部变量:函数里面定义的变量,只要一出了函数就不能用了

2、全局变量:在函数外面定义的变量,就会全局变量,在函数里面与外面都可以用

global关键字:全局变量如果要在函数中修改的话,需要加global关键字声明;

定义的全局变量是list或者字典或者集合,不需要声明global;只有字符串、元组,int、float 需要声明global

浅拷贝与深拷贝

浅拷贝:两个变量指向同一块内存地址,查看内存地址用print(id(name))

深拷贝:需要导入copy模块,深拷贝两个变量的内存地址不一样

注意:不要循环删list,会导致结果错乱

1不是偶数,也打印出来了,这就导致了结果的错乱

正确代码如下:

模块

定义:一个Python文件就是一个模块

模块分类:

1、标准模块:Python自带的 time,random

2、第三方模块:别人写好的,需要安装 比如 连接mysql的,汉字转成拼音的
3、自己写的Python文件

json模块:解析Json的,json就是一个字符串

导入json模块:

1、json.loads方法:直接操作的是字符串,把json转成字典

2、json.load方法:可以直接操作文件对象,自己读取文件里的内容,把文件对象里的json转成字典。

3、json.dumps:把字典转成字符串。

4、json.dump:操作文件对象,把字典写入到文件里面,文件里以json形式显示

os模块

操作系统相关的东西都在os模块里面:import os

os.walk方法:可以遍历返回文件目录、文件夹、文件

定义一个查找文件内容的函数

import osdef find_movie(KeyWord,path="e:\\",):    for cur_path, cur_dirs, cur_files in os.walk(path):        # if KeyWord in str(cur_files):        #     print(cur_path)        for file in cur_files:            # if KeyWord in file:            if file.endswith('KeyWord'):                print(cur_path)

time模块 import time

1、时间戳转换成格式化好的时间

2、格式化好的时间转成时间戳

3、定义两个函数,实现  时间戳转换成格式化好的时间、格式化好的时间转成时间戳

def timestampToStr(timestamp=None,format='%Y-%m-%d %H:%M:%S'):    #时间戳转格式化好的时间    if timestamp:        time1=time.localtime(timestamp)#时间元祖        res=time.strftime(format,time1)        #print(res)    else:        res=time.strftime(format)#如果没有传时间元祖,那么就默认传当前时间格式化好的时间元祖        #print(res)    return res#test=timestampToStr(1540280339)#test=timestampToStr()#print(test)

def strTotimestamp(str=None,format='%Y%m%d%H%M%S'):    #格式化好的时间转时间戳    if str:        timep=time.strptime(str,format)#转成时间元祖        res=time.mktime(timep)#时间元祖转成时间戳    else:        res=time.time()    return int(res)res=strTotimestamp('20180505101010')print(res)

注意:如果提示需要导入模块,那么用快捷键Alt+Enter即自动导入了。如下 提示需要导入json模块,即用快捷键就可以自动导入了。

 

转载于:https://www.cnblogs.com/qiaomeiling/p/10057349.html

Python(八) 函数、模块相关推荐

  1. Python 数学函数模块(Math)

    简介: Python具有一组内置的数学函数,包括一个扩展的数学模块,可让您对数字执行数学任务.Python math模块中定义了一些数学函数.由于这个模块属于编译系统自带,因此它可以被无条件调用.该模 ...

  2. python导入函数模块 为什么会打印两次_5.1.2Python从模块导入函数

    Posted by 撒得一地 on 2016年3月2日 in python教程 国外稳定加速器推荐 vypr | Nord Python下模块导入函数,即把某件事作为另一件事导入,从模块导入函数的时候 ...

  3. python函数模块关键代码_从零开始学Python(六):函数,模块和类的使用

    从这章开始,我们不在使用sublime文本编译器进行编码了,主要是我们每次运行的使用还得去命令行执行pyhon ***.py命令查看结果,操作比较麻烦.推荐大家使用Pycharm(具体安装使用教程大家 ...

  4. matlab调用python自定义函数模块进行数据分析总结

    出发点:团队其它成员写好的python函数功能,可以进行数据的导入,但利用python开发环境绘图分析没有用matlab分析的效果好,因此萌发了发挥matlab的绘图优势+原先python写好的功能组 ...

  5. 导入python标准数学函数模块的语句_《Python编程快速上手——让繁琐工作自动化》——2.8 导入模块...

    本节书摘来自异步社区<Python编程快速上手--让繁琐工作自动化>一书中的第2章,第2.8节,作者[美] Al Sweigart,王海鹏 译,更多章节内容可以访问云栖社区"异步 ...

  6. 牛人总结python中string模块各属性以及函数的用法,果断转了,好东西

    原文链接:http://blog.chinaunix.net/uid-25992400-id-3283846.html 任何语言都离不开字符,那就会涉及对字符的操作,尤其是脚本语言更是频繁,不管是生产 ...

  7. python的shutil模块是内置的_Python之shutil模块11个常用函数详解,python内置函数是什么...

    Python之shutil模块11个常用函数详解,python内置函数是什么 shutil 是 Python 中的高级文件操作模块,与os模块形成互补的关系,os主要提供了文件或文件夹的新建.删除.查 ...

  8. python class函数报错_Python multiprocess pool模块报错pickling error问题解决方法分析

    本文实例讲述了Python multiprocess pool模块报错pickling error问题解决方法.分享给大家供大家参考,具体如下: 问题 之前在调用class内的函数用multiproc ...

  9. python isalpha函数用法_python中string模块各属性以及函数的用法

    任何语言都离不开字符,那就会涉及对字符的操作,尤其是脚本语言更是频繁,不管是生产环境还是面试考验都要面对字符串的操作. python的字符串操作通过2部分的方法函数基本上就可以解决所有的字符串操作需求 ...

  10. python跨函数调用变量_对python中不同模块(函数、类、变量)的调用详解

    首先,先介绍两种引入模块的方法. 法一:将整个文件引入 import 文件名 文件名.函数名( ) / 文件名.类名 通过这个方法可以运行另外一个文件里的函数 法二:只引入某个文件中一个类/函数/变量 ...

最新文章

  1. (转)小小的研究了一下linux下的”注册表“ gconf-editor
  2. Windows 2008 R2 SP1部署Lync2010标准版(1)
  3. html转chm后脚本错误,win10系统打开chm资料弹出窗口提示脚本出现错误的恢复办法...
  4. 截取字符串slice(),substring() ,substr()。
  5. 鸿蒙正式推送时间,鸿蒙系统现已正式推送,更新名单也随之出炉,包括荣耀手机!...
  6. SpringBoot 项目war包部署 配置外置tomcat方法
  7. excel两个表格数据对比_Office 2010如何在桌面显示两个独立Excel表格
  8. 嘉善 机器人比赛_电脑机器人比赛辅导教师培训在浙师大嘉善附校举行
  9. Linux下安装Kafka(单机版)
  10. linux安装mysql5.7.29_linux 之centos7搭建mysql5.7.29的详细过程
  11. pythonurllib的使用_python re和urllib的使用问题。
  12. Maven-打外部jar包
  13. 芝麻HTTP:TensorFlow LSTM MNIST分类
  14. 解决客户一例:使用域超级管理员打开Exchange 2010发现没有权限
  15. linux du 查看文件夹大小
  16. 使用kaptcha快速生成验证码
  17. 从零开始学PCR技术(四):常见问题
  18. 大火的何铠明:MAE——用于计算机视觉的可扩展自监督学习神器
  19. Windows XP 共享 Workgroup无法访问.您可能没有权限使用网络资源
  20. 【小米商城】--类别展示,登出,注销商品详情展示

热门文章

  1. linux查服务器总内存大小,在linux 下怎么查看服务器的cpu和内存的硬件信息
  2. 用sqlalchemy对mysql数据库增删改查demo
  3. Linux C 数据结构——队列
  4. World Token官网钱包收益是骗人的吗?是传销吗?
  5. World Token钱包官网骗局模式,是传销吗?
  6. [react] createElement与cloneElement两者有什么区别?
  7. [react] react的状态提升是什么?使用场景有哪些
  8. PS教程第十八课:放大缩小
  9. [html] title与h1、b与strong、i与em的区别分别是什么?
  10. [vue-cli] 说下你了解的vue-cli原理?你可以自己实现个类vue-cli吗?