一、函数

1.说白了就是把一组代码合到一起,可以实现某种功能,需要再用到这种功能的话,直接调用这个函数就行

2.函数、方法是一回事

3.定义一个函数的格式是:def+函数名+()

4.函数必须调用了之后才能执行

eg:

my_open

fw = open('a.txt','a+')

fw.seek(0)

all_users = {} # 用来存放所有的用户名和密码

def read_users(file_name):#括号里面是形式参数,其实就是一个变量

#函数体

print(file_name)

with open(file_name) as fr:

for line in fr:

up = line.strip().split(',') # 分隔账号密码

# print('分隔完之后的账号密码',up)

s_username = up[0] # 账号

s_pwd = up[1] # 密码

all_users[s_username] = s_pwd

print('调用函数之前:',all_users)

read_users('a.txt')#调用函数传进去的参数叫做实际参数,简称实参

#函数名加上括号就是调用,函数需调用之后才能执行

print('调用函数之后:',all_users)

简单写

def hello(name):

#必填参数,位置参数

print('hello %s'%name)

hello('郑爽')

eg1:

def reg(name,age,sex='男'):

age、name必填参数,位置参数

sex是默认值参数,不是必传

print('hi %s,age is %s,sex is %s'%(name,age,sex))

reg('小迪',19,'nan')

eg2

5.*args#可变参数

eg:

def post(*args):

可变参数,也叫参数组,也不是必填的,它接收到的是一个元组

它把调用函数时穿进去的每一个参数都放到一个元组里

print(args)

post('001','denglu','http://www.baiudd.com','post','a=1')

post('001','denglu')

post('001','denglu','post')

post('001')

post()

def other(name,age,country='china',*args):

print(name)

print(age)

print(country)

print(args)

other('wubing','999')

eg:

def other(name,age,country='china',*args):

print(name)

print(age)

print(country)

print(args)

other('')

6.**kwargs,关键字参数,接收的是一个字典,调用得用xx=11

传入字典调用的时候就得写**{'age':18,'name':'xiaodi'}

d = {'age':18,'name':'xiaodi'}

def kw(**kwargs):

print(kwargs)

kw()

eg:

def other2(name,country='china',*args,**kwargs):

#如果必填参数、默认值参数、可变参数和关键字参数你要一起用的话,必须参照必填参数、默认值参数、可变参数和关键字参数的顺序接受,否则就报错

print(name)

print(country)

print(args)

print(kwargs)

other2('wubing')

other2('xiaodi','beijing','python','yin',user = 'ywq')

7.关键字参数调用

eg:

def write(filename,model,ending,user,os,money,other):

print(filename)

print(model)

print(ending)

print(user)

print(os)

print(money)

print(other)

write(os='windows',user='wubing',model='w',filename='a.txt',ending='utf-8',money=222,other='hahah')

8.函数的返回值

def plus(a,b):

return函数

1.调用碰到return,立即结束这个函数

2.调用完函数之后,返回计算的结果

3.函数可以没有返回值,如果没有返回值的话,默认返回none

4.如果这个函数的处理结果需要在别的地方用到,那就需要给函数返回值

5.如果函数return多个值得话,那么他会把多个值放到一个元祖里面去

c = a+b

return c

print(c)

plus(1,2)

eg:

score1 = 50

score2 = 90

def echo(sum):

print('总分是%s'%sum)

res = plus(score1,score2)

print(res)

echo(res)

lis = [5,2,6,44,77]

print(lis.sort)

9.小程序

#1、判断小数

# 1.92

# -1.988

def is_float(s):

'''

这个函数是用来判断传入的是否为小数,包括正小数和负小数

:param s: 传入一个字符串

:return: True or False

'''

s = str(s)

if s.count('.')==1:#判断小数点个数

sl = s.split('.')#按照小数点进行分割

left = sl[0]#小数点前面的

right = sl[1]#小数点后面的

if left.startswith('-') and left.count('-')==1 and right.isdigit():

lleft = left.split('-')[1]#按照-分割,然后取负号后面的数字

if lleft.isdigit():

return True

else:

return False

elif left.isdigit() and right.isdigit():

#判断是否为正小数

return True

else:

return False

10.全局变量和局部变量

# score3 = [1,2,3,4,5]

# score3 = {"id":1}

score3 = 100

def my_open():

#在函数里面定义变量叫局部变量,它只能在函数里面用

#出了该函数外,就不能使用了

#在函数外面定义的变量,是全局变量,在函数内也可以使用

#如果想在函数里面修改全局变量的值,那么要先用global关键字声明

#要修改全局变量是int、string的话,必须得写global

#如果是字典和list的话,要修改的话,不能加global

fw = open('a.txt','a+')

fw.seek(0)

print('score3',score3)

d={'id':2}

d['price']=99

python语言中param_四、python之函数详解一相关推荐

  1. python语言中with as的用法使用详解

    本篇文章主要介绍了python语言中with as的用法使用详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随小编过来看看吧 With语句是什么? 有一些任务,可能事先需要设置,事后做 ...

  2. python语言怎么用-python语言中with as的用法使用详解

    With语句是什么? 有一些任务,可能事先需要设置,事后做清理工作.对于这种场景,Python的with语句提供了一种非常方便的处理方式.一个很好的例子是文件处理,你需要获取一个文件句柄,从文件中读取 ...

  3. c语言常量的正确表示const,C语言中的const和free用法详解

    注意:C语言中的const和C++中的const是有区别的,而且在使用VS编译测试的时候.如果是C的话,请一定要建立一个后缀为C的文件,不要是CPP的文件.因为,两个编译器会有差别的. 一.C语言中的 ...

  4. 【Python入门】Python之OS模块39个常用函数详解

    os,语义操作系统,所以该模块就是操作系统相关的功能了,用于处理文件和目录这些我们日常手动需要做的操作,比如新建文件夹.获取文件列表.删除某个文件.获取文件大小.重命名文件.获取文件修改时间等,该模块 ...

  5. python数据可视化-matplotlib之散点图sactter函数详解

    本文转载自-[数字的可视化:python画图之散点图sactter函数详解] 感谢博主-hefei_cyp的博客 最近开始学习Python编程,遇到scatter函数,感觉里面的参数不知道什么意思于是 ...

  6. 【蓝牙sbc协议】sbc源码阅读笔记(四)——sbc_encode函数详解

    sbc_encode函数详解 函数定义: // sbc.c SBC_EXPORT ssize_t sbc_encode(sbc_t *sbc, const void *input, size_t in ...

  7. python语言中split-python中的split()函数和os.path.split()函数使用详解

    Python中有split()和os.path.split()两个函数: split():拆分字符串.通过指定分隔符对字符串进行切片,并返回分割后的字符串列表. os.path.split():将文件 ...

  8. python语言中mod_mod在python中怎么用

    MOD是取模运算符. 语法 MOD ( a, b) 通常情况下取模运算(mod)和求余(rem)运算被混为一谈,因为在大多数的编程语言里,都用'%'符号表示取模或者求余运算.在这里要提醒大家要十分注意 ...

  9. python 依据某几列累加求和_关于Python数组求和的四个问题及详解,让你更加爱Python!...

    总结了四个数求和的问题及详解,如果你正在学习Python的话,可以多学习一下. | 问题一:专题概述 代码相关 本节的内容 通过第一个问题来初步了解数组求和的两种常用方法 Two Sum 给定一个整数 ...

最新文章

  1. 6-12 二叉搜索树的操作集
  2. 数据挖掘中分类算法小结
  3. java solar_java中的内部类总结
  4. You must use the Role Management Tool to install or configure Microsoft .NET Framework 3.5 SP1
  5. Ecsotre 参考
  6. stm32 USART_IT_IDLE中断 一帧数据
  7. 学c语言用vs,毫无编程基础的小白准备学习C语言,用VC6还是VS2015?
  8. 基于selenium实现12306的登录操作(图形验证码识别)
  9. 黑客窃取思科、IBM与甲骨文认证管理系统内的敏感数据
  10. [蓝桥杯][2014年第五届真题]分糖果-模拟
  11. git ssh创建分支_【ssh简单版git-server 1】自建git-server
  12. Java基础学习——安装JDK
  13. maven使用中央仓库没有的jar包001---Maven自定义上传第三方包到3rd party(第三方无依赖jar和本地扩展类加入maven统一管理)
  14. 华为惨遭围剿;京东人工智能养猪;三星承认中国市场失败 | 极客头条
  15. Golang高效实践之泛谈篇
  16. max pooling 和 average pooling
  17. 推荐《天才在左,疯子在右》
  18. 图像超分算法小合集二:FSRCNN、DRCN、RDN、EDSR
  19. 李宏毅nlp学习笔记12:DST(Dialogue State Tracking)
  20. 机器学习的数学基础(贰)

热门文章

  1. 开关电源入门01-开关电源的基本形式
  2. 如何禁用/启用笔记本内置键盘?
  3. 租房管理系统 php,php出租房数据管理及搜索页面
  4. openwrt重启后,修复dns
  5. 英文科技论文写作细节
  6. Android 生成自己的签名key(releasekey platform shared media networkstack verify等)
  7. 【翻译】乔尔测试:改进代码的12步
  8. unity基础学习之基础语义
  9. 如何制定新年节假日ASO搜索优化策略
  10. python12306源码_春运了,Python大神分享爬取12306车票信息的例子,附抢票源码