1.函数

1.1  定义函数

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

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

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

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

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

1.2  函数参数

【python 传参 传递的是一个引用】

·普通参数

def userinfo(name,userid):
print(name,userid)
userinfo('xx',20) #xx 20

·默认参数(默认参数必须放在参数列表最后)


def userinfo(name,userid,status='ok'):
print(name,userid,status)
userinfo('xx',20)
userinfo('xx',20,'error')
#xx 20 ok
#xx 20 error

·动态参数     * 默认将传入的元素,全部放在元祖中  ** 默认将传入的元素,全部放到字典里

def userinfo(*args):       #参数是元祖或者列表
print(args)
l_list = [1,2,3]
userinfo(l_list)
userinfo(*l_list)
#([1, 2, 3],)
#(1, 2, 3)
def userinfo(**args):        #参数为字典
print(args)
dic = {"name":'xx',"age":20}
userinfo(name='xx')
userinfo(**dic)
userinfo(name='xx',age=30) #{'name': 'xx'}
#{'age': 20, 'name': 'xx'}
#{'age': 30, 'name': 'xx'}
def userinfo(*args,**kwargs):        #万能参数
print(args,kwargs)
dic = {"name":'xx',"age":20}
l_list = [1,2,3]
userinfo(*l_list,**dic)
#(1, 2, 3) {'name': 'xx', 'age': 20}

1.3  变量作用域

定义在函数内部的变量拥有一个局部作用域,定义在函数外的拥有全局作用域。

局部变量只能在其被声明的函数内部访问,而全局变量可以在整个程序范围内访问。调用函数时,所有在函数内声明的变量名称都将被加 。

想要改变函数外的全局变量,需要加global参数。

AGE =20
def userinfo():
AGE = 18
print(AGE)
userinfo()
print(AGE)
#
#
AGE =20
def userinfo():
global AGE #改变全局变量
AGE = 18
print(AGE)
userinfo()
print(AGE)
#
#

虽然函数内不能改变全局变量的值,但是假如变量为列表、字典等,可以修改元素,但是不能删除重建

Info = [1,2]
dict_info = {
"age":18,
"name":"caesary",
} def testfun():
Info.append(3)
dict_info["addr"] = "HLJ"
print(Info)
print(dict_info) testfun()
print(Info)
print(dict_info)
#[1, 2, 3]
#{'age': 18, 'name': 'caesary', 'addr': 'HLJ'}
#[1, 2, 3]
#{'age': 18, 'name': 'caesary', 'addr': 'HLJ'}

2.内置函数

abs()  函数返回(数字)的绝对值

all()  如果()里的所有元素不为0、''、False,all()返回True,否则返回False

>>> all(['a', 'b', 'c', 'd'])  #列表list,元素都不为空或0
True
>>> all(['a', 'b', '', 'd']) #列表list,存在一个为空的元素
False
>>> all([0, 1,2, 3]) #列表list,存在一个为0的元素
False
>>> all(('a', 'b', 'c', 'd')) #元组tuple,元素都不为空或0
True
>>> all(('a', 'b', '', 'd')) #元组tuple,存在一个为空的元素
False
>>> all((0, 1,2, 3)) #元组tuple,存在一个为0的元素
False
>>> all([]) # 空列表
True
>>> all(()) # 空元组
True

any()  如果()里的任何元素不为0、''、False,any()返回True。如果iterable为空,返回False

>>> any(['a', 'b', 'c', 'd'])  #列表list,元素都不为空或0
True
>>> any(['a', 'b', '', 'd']) #列表list,存在一个为空的元素
True
>>> any([0, '', False]) #列表list,元素全为0,'',false
False
>>> any(('a', 'b', 'c', 'd')) #元组tuple,元素都不为空或0
True
>>> any(('a', 'b', '', 'd')) #元组tuple,存在一个为空的元素
True
>>> any((0, '', False)) #元组tuple,元素全为0,'',false
False
>>> any([]) # 空列表
False
>>> any(()) # 空元组
False
bin()  十进制转二进制
oct() 十进制转八进制
hex() 十进制转十六进制
print(bin(10),oct(10),hex(10))
#0b1010 0o12 0xa

bytes(字符串,编码格式)

一个字节8位

utf-8 一个汉字3个字节

gbk   一个汉字2个字节

n = '测试'
m = bytes(n,encoding="utf-8")
m1 = bytes(n,encoding="gbk")
print(m,m1)
print(str(bytes(n,encoding="utf-8"),encoding="utf-8")) #字节转化成字符串
#b'\xe6\xb5\x8b\xe8\xaf\x95' b'\xb2\xe2\xca\xd4'
#测试

format()       格式化输出

s1 = 'i am {0},age {1}'.format('xx',20)
print(s1)
s2 = 'i am {0},age {1}'.format(*['xx',21])
print(s2)
s3 = 'i am {name},age {age}'.format(name='xx',age=22)
print(s3)
dic = {'name':'xx','age':23}
s4 = 'i am {name},age {age}'.format(**dic)
print(s4)
#i am xx,age 20
#i am xx,age 21
#i am xx,age 22
#i am xx,age 23
 

python 函数,内置函数的更多相关文章

  1. python基础-内置函数详解

    一.内置函数(python3.x) 内置参数详解官方文档: https://docs.python.org/3/library/functions.html?highlight=built#ascii ...

  2. 如何查看Python的内置函数

    经常调用的时候不知道python当前版本的内置函数是哪些,可以用下面的指令查看: C:\Users\Administrator>python Python 2.7.11 (v2.7.11:6d1 ...

  3. python_way,day3 集合、函数、三元运算、lambda、python的内置函数、字符转换、文件处理

    python_way,day3 一.集合 二.函数 三.三元运算 四.lambda 五.python的内置函数 六.字符转换 七.文件处理 一.集合: 1.集合的特性: 特性:无序,不重复的序列 如果 ...

  4. python基础——内置函数

    python基础--内置函数  一.内置函数(python3.x) 内置参数详解官方文档: https://docs.python.org/3/library/functions.html?highl ...

  5. python(day16)内置函数,匿名函数

    # add = lambda x,y:x+y # print(add(1,2)) # dic={'k1':10,'k2':100,'k3':30} # def func(key): # return ...

  6. Python第七天 函数 函数参数 函数里的变量 函数返回值 多类型传值 函数递归调用 匿名函数 内置函数

    Python第七天   函数  函数参数   函数里的变量   函数返回值  多类型传值     函数递归调用   匿名函数   内置函数 目录 Pycharm使用技巧(转载) Python第一天   ...

  7. Python的内置函数

    python的内置函数一共有68个,下面将简单介绍各个函数的功能. abs() dict() help() min() setattr() all() dir() hex() next() slice ...

  8. python 匿名函数&内置函数

    匿名函数:为了解决那些功能很简单的需求而设计的一句话函数怎么定义匿名函数: cal = lambda x : x*x # cal是函数名,lambda是定义匿名函数的关键字 冒号前面的额x是参数即函数 ...

  9. python print()内置函数

    啦啦啦啦啦啦,我又来了,学习任何东西都得坚持,我一定的好好加油!!! 今天来说说print()函数,前边我们已经用过好好多次啦,现在来学习哈吧!!! Python的内置函数,print() print ...

  10. Python学习笔记014——迭代工具函数 内置函数enumerate()

    1 描述 enumerate() 函数用于将一个可遍历的数据对象(如列表.元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中. 2 语法 enumerate(sequ ...

随机推荐

  1. Tomcat 连接数与线程池详解

    前言 在使用tomcat时,经常会遇到连接数.线程数之类的配置问题,要真正理解这些概念,必须先了解Tomcat的连接器(Connector). 在前面的文章 详解Tomcat配置文件server.xm ...

  2. Qt 学习之路 2(38):存储容器

    Qt 学习之路 2(38):存储容器 豆子 2013年1月14日 Qt 学习之路 2 38条评论 存储容器(containers)有时候也被称为集合(collections),是能够在内存中存储其它特 ...

  3. 【算法笔记】B1002 写出这个数

    1002 写出这个数 (20 分)读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式:每个测试输入包含 1 个测试用例,即给出自然数 n 的值.这里保证 n 小于 101 ...

  4. Tarjan算法打包总结(求强连通分量、割点和Tarjan-LCA)

    目录 Tarjan打包总结(求强连通分量.割点和Tarjan-LCA) 强连通分量&缩点 原理 伪代码 板子(C++) 割点 原理 伪代码 最近公共祖先(LCA) 原理 伪代码 板子 Tarj ...

  5. [水题AC乐] - 贪心

    HDU - 1009 https://paste.ubuntu.com/p/rgSYpSKkwW/ POJ - 1017 麻烦的模拟 贪心 题意就是用尽量少的66h箱子装nnh的物品,贪心策略很明显, ...

  6. SPOJ - FAVDICE 简单期望

    dp[0]=0; // rep(i,1,n) dp[i]=(double)(n-i)/n*dp[i-1]+1+(double)(i)/n*dp[i]; // (n-i)/n dp[i]= n-i / ...

  7. 怎样把ppt格式文件放到网页上?

    方法一:把ppt文件的扩展名直接修改为pps,嵌入到网页中嵌入代码:缺点:这种方式浏览器会提示是打开,还是下载,选择打开的话会直接在浏览器中打开,并且客户端一定要安装Office PowerPoint ...

  8. TimesTen LINUX 安装日志

    $ ./setup.sh NOTE: Each TimesTen installation is identified by a unique instance name. The instance ...

  9. google风格

    复制一下代码即可: <?xml version="1.0" encoding="UTF-8" standalone="no"?> ...

  10. Beam概念学习系列之Pipeline 数据处理流水线

    不多说,直接上干货! Pipeline 数据处理流水线 Pipeline将Source PCollection ParDo.Sink组织在一起形成了一个完整的数据处理的过程. Beam概念学习系列之P ...