全局变量和局部变量 我们通常把定义在函数外的变量成为全局变量,定义在函数内的变量称为局部变量,顾名思义,全局变量的作用域是整个代码段,局部变量的作用域就只是在它所属的代码段,变量只在它的作用域里有效. 通过实例,我们可以进一步理解下,全局和局部的概念. count = 10 #全局变量 def print_local(): count = 5 #局部变量,这个count覆盖了全局变量count,这2个是不同的变量. print(count) def print_global(): print(c…
什么是函数? 函数是可以实现一些特定功能的方法或是程序,简单的理解下函数的概念,就是你编写了一些语句,为了方便使用,把这些语句组合在一起,给它起一个名字,即函数名.使用的时候只要调用这个名字,就可以实现语句组里的功能了.Python中自带的一些函数就叫做内建函数,不需要我们自己编写.还有一种是第三方函数,就是其它程序员编好的一些函数,共享给大家使用.前面说的这两种函数都是拿来就可以直接使用的.当然还有一种,就是我们自己编写的为了方便使用的函数,就叫做自定义函数了. 定义一个函数 Python使用…
lambda函数 在Python里除了用def定义函数外,还有一种匿名函数,也就是标题所示的lambda函数,它是指一类无需定义标识符(函数名)的函数或子程序. lambda函数的使用语法如下: lambda [参数1[, 参数2, ... 参数N]]: 表达语句 比如我们要实现一个功能求一个数的2倍,但是我们又不想写一个函数,只想在这个代码块里用到这个功能,但是会用到多次,这时我们就可以使用lambda函数: get_double = lambda a : a * 2 print(get_do…
return语句 return语句的写法是: return 表达式 return语句用于退出函数,选择性地向调用方返回一个表达式.return在不带参数的情况下,默认返回None. None是一个特殊的值,它的数据类型是NoneType.NoneType是Python的特殊类型,它只有一个值None.它不知道任何运算也没有任何内建方法,和任何其他的数据类型比较永远返回false.你可以将None复制给任何变量,但是你不能创建其他NoneType对象.实例参考: #使用return语句在add函数…
可变参数( ** ) 讲好了一颗*,那如果函数的最后一个参数带有 ** 前缀: 所有正常参数之外的其他的关键字参数都将被放置在一个字典中传递给函数. 要好好理解* 和 ** 两种可变参数哦~ 看个**的实例吧: def print_info(x,**info): print(x) for n in info: print(n + ':' + str(info[n])) #字符串类型的连接,需要把整形转换为字符串型 print_info(1,name = 'mayacoder', age = 1)…
关键字参数 函数也可以使用 键 =值 的关键字参数形式被调用,这种调用形式的参数被称为关键字参数. 特别是在一个有许多参数的函数下,你想要指定参数中的部分参数,你可以使用关键字参数的方式来调用函数. 这有两个优势: 1.使用函数容易,因为我们不需要担心参数的顺序. 2.如果其他参数有默认参数值,我们可以只给我们想赋值的参数赋值. def print_info(name, age): print("name:", name) print("age:", age) pr…
看完了Python的缩进,现在来看看Python的标识符.引号和注释. 标识符 关于Python的标识符,其实不是与众不同,只是有一定的规则. 标识符是编程时使用的名字.在Python中,标识符有几点要素: 第一个字符必须是字母或者下划线 _ : 标识符的的其他部分必须由数字.字母.下划线组成: 标识符对字母的大小写敏感. 引号 Python的字符串通常可以用单引号 ' ' .双引号 " " .双三引号 """ """或单三引…
创建一个列表 讲完了序列,我们现在来讲讲Python中最常见的一种序列数据类型--列表. 列表创建的语法是: list_name = [item1, item2, item3, .......] 列表是可变的,支持索引.切片截取,列表数据可以是多种数据类型组成(例如: mix = [1, 2, 'a', 'b', 'c']),之前文章我们已经充分的使用过列表了,现在不妨再了解下列表是如何创建的. 比如这样就可以创建一个列表了: like_animals = ['dog','elephant','…
长度.最大值和最小值 序列类型的数据结构,常常会用到长度检查.最大最小值检查的函数. 他们的作用: len(序列):返回列表的长度(元素个数): max(序列) :返回列表中元素最大值: min(序列) :返回列表中元素最小值. numbers = (5, 3, 1, 4, 2) print(min(numbers)) #输出numbers的长度 print (len(numbers)) #输出numbers的最大值 print (max(numbers)) 更多学习内容,就在码芽网http:/…
序列概念 序列,顾名思义就是有顺序的列,在Python里序列类型的数据结构包括字符串,列表和元组.既然都是序列类型,说明他们有很多共通点,他们的每一个元素都可以通过指定的偏移量方式(索引操作)来获得,而多个元素则可以通过切片方式来得到,这些方式会在后面讲到. 接下来我们来详细了解下序列. 运算操作 前面介绍字符串的时候讲过连接( + ) 和重复( * )操作,序列中的列表和元组也都是支持这两种操作的. numbers = (1, 2, 3, 4, 5) triple_numbers = numb…
什么是数据结构? 数据结构是指:相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成. 举个列子来理解这个数据结构: 数据可以比作是书本, 数据结构相当于书架,书存放在书架上,要拿书,我们就得到书架上面去取.为了更快的拿到想要的书,可以把书按照某个方式来排列.比如将书架分成N层,(卡通书在第一层,文学书在第二层......)不同种类的书放在书架的不同层里. 这就是对数据结构通俗的一种理解. Python的数据结构分类 Python中的数据结构可以统称为容器(contain…
有几个元音字母? 有一个字符串"I learn Python from maya",我们想要查找出它里面的元音字母(aeiou)(其实是找出这几个小写字母),并统计出其元音字符的个数.这个时候我们就可以结合条件语句和循环语句对字符串进行处理了. #sentence是一个字符串,你需要去统计这个字符串的元音字母数 sentence = "I learn Python from mayacoder" #count用来存储元音字母数 count = 0 #在这里写下你的代…
for语句 在Python里,循环语句除了while语句,还有for语句. 通常我们用for循环来遍历(按约定的顺序,对每个点进行访问,且只做一次访问)有序列的内容,比如列表和字符串(列表内容我们会在之后的章节详细介绍),for遍历循环的代码语法如下: for x in list1: print(x) 这里变量会随着for循环的执行一直在变化,第一次循环是序列的第一个元素,第二次循环时序列的第二个元素,以此类推. 看段代码,理解下吧: #my_foods这个列表里有5个食物,使用for语句把他们…
elif语句 (相当于C语言的else if) 在Python中,当我们需要有更多的判断条件时,我们往往会使用另外一种语法表达,即使用elif: if 判断条件1: 执行语句1 elif 判断条件2: 执行语句2 elif 判断条件3: 执行语句3 ...... else: 执行语句n 现在我们有一个任务要完成,假设现在有一个分数,你他的等级如下: 90分及以上属于A:80分到89分属于B:70到79分属于C:60分到69分属于D: 0到59分属于E: 你需要用if/elif/else语句根据分…
成员运算符 Python里有成员运算符,可以判断一个元素是否在某一个序列中.比如可以判断一个字符是否属于这个字符串,可以判断某个对象是否在这个列表中等等. Python中的成员操作符的使用语法是: obj [not] in sequence 这个操作符返回值是True或者False. 看个代码实例吧: 身份运算符 Python支持对象本身的比较,比较的语法是: obj1 is [not] obj2 身份运算符是用来比较2个对象是否是同一个对象,而之前比较运算符中的 == 则是用来比较2个对象的值…
赋值也是一种运算符 我们在之前的章节,了解过,在Python里变量是不需要声明的,只要变量的标识符合法,就可以直接定义并赋值,而且Python也允许我们同时为多个变量赋值(包括为多个变量赋不同类型的值),例如: a = b = c = 20 #三个变量赋同样的值 d, e, f = -2, 5.5, 'hello' #三个变量赋不同类型的值 Python里的赋值运算有下面几种: 看段实例代码和运行结果,做下理解吧: 逻辑运算 程序中会经常用到逻辑运算,生活中也都是逻辑. 比如老师要你来听明天下午…
比较运算符 比较运算符可以使用比较两个值,所有的内建类型都支持比较运算.当用运算符比较两个值时,结果是一个逻辑值,不是True,就是False. 有一点要注意的是,不同的类型的比较方式不一样,数字类型会根据数字大小和正负进行比较,而字符串会根据字符串序列值进行比较等等. 在Python中有以下比较运算符: 现在我们就用比较运算符来完成一个小任务吧: 在x和y之间填入正确的比较运算符,来输出x和y的最大值,请主动思考哦~~~ 更多学习内容,就在码芽网http://www.mayacoder.com…
算术运算符 之前文章在介绍变量类型的时候,其实已经用过了很多算术符,比如+.-.*././/.** 等,除此之外,还有一个符号是之前内容没提到的,就是 % ,用来返回除法余数的运算符号. 假设有变量x和y,x为10,y为3,x%y的结果就是1. 在运算符中有优先级,跟数学中的一样,所以在写的时候有些要优先运算的需要加上括号,比如:3 * (4 + 5). Python支持不同的数字类型相加,它使用数字类型强制转换的方式来解决数字类型不一致的问题,就是说它会将一个操作数转换成另一个操作数相同的数据…
切片截取是python中字符串常见的一些操作,我们会在这篇文章里详细介绍,切片截取的作用是获取子字符或子字符串. 实际上,我们要做的就是使用索引,用冒号分隔两个索引,形式为:变量[头下标:尾下标],冒号之前的数字表示开始的位置,冒号之后的数字表示结束的位置.这是一个左闭右开区间,也就是说这个字符串包含头下标,但是不包含尾下标. Python的数据有两种索引方式:最左边以0开始,依次增加:最右边的元素索引为-1,往左依次减少. Python的索引很灵活,可以根据具体情况来选择相应的索引方式. 字符…
创建一组数字 Python 的有以下几种内置数字类型: int,整型,比如:1.-2.598: float,浮点型,比如:0.0.-3.5.18.55: bool,布尔型,即True和False两个关键字,但他们的值实际上还是1和0,所以他们是可以进行加减的哦: complex,复数型(复数是数学术语),用a+bj或者complex(a,b)来表达,a.b都是浮点型.比如:3.5j.5-2j.   对数字进行运算 数字运算?有同学会说这不就是加减乘除(+ - * /)嘛,当然没错啦! 但在这里要…
关于Python的变量是这样描述的: 变量是存储在内存里的一个值,通过变量名,我们可以访问到该变量的值. 上面这几行代码中,price,count和sum都是变量,Python是动态类型语言,变量是不需要声明的,只要在使用变量前,对其进行赋值即可,变量只有被赋值了,才会被创建.关于赋值,我们会在之后的博文会再详细介绍哦. Python有6个标准的变量数据类型: Numbers(数字) String(字符串) List(列表) Tuple(元组) Set(集合) Dictionary(字典) 我们…
Python是什么? 首先我们先简单介绍下python这门语言,Python是一种解释性的脚本语言,它不需要像C/C++那样先编译再执行,也不像JS那样可以在浏览器上直接执行.它为我们提供的基础代码库覆盖了网络.文件.GUI.数据库.文本等大量内容,你可以直接使用Python提供的功能而不用重新开始写.Python在服务端开发,GUI,数据挖掘等等各种领域都能很好的被运用......and so on想要多了解的朋友,可以自行度娘下吧. 知道了Python这门语言之后,我们也需要对它的语言特点进…
insert 除了使用索引,我们还可以用列表的insert方法,在列表的指定位置添加新的值. insert的用法: list.insert(index, item) 例如: like_animals = ['dog', 'elephant', 'rabbit', 'lion'] #使用列表的insert方法为like_animals添加元素 like_animals.insert(3,'pig') print(like_animals) 当这个索引超出列表的最大范围时,会在最后插入,或者在最前面…
while循环 上一节的条件语句实际上只能执行一次,如果要反复的判断执行一些事件要怎么办? 这个时候就需要靠while.for等循环语句了. 我们先来认识下while循环,何为while循环?就是在某条件下,循环执行一段语句,代码上可以表达为: while 判断条件: 执行语句 上面代码的语句,则是用while来输出1-10的整数的哦~ 更多学习内容就在码芽网http://www.mayacoder.com/lesson/index 无限循环 你可能会发现,当你使用while的时候,如果whil…
位运算符 位运算实际上是把数字看作二进制来进行计算,它的运算法则如下: 结合实例,来看下位运算是如何进行的吧: 位运算在实际应用中用途很广泛,比如我们经常听到的子网掩码,它其实就是和IP地址做了按位与运算,还有很多用途会在你实际工作中遇到. 看一段实例代码吧,你觉得结果会是备注写的这样的么? x = 9 #二进制表达为1001 y = 12 #二进制表达为1100 print(x & y) #结果为1000,即8 print(x | y) #结果为1101,即13 print(x ^ y) #结…
if/else语句 条件语句实际在前面的文章里我们已经使用过几次了,在这里我们需要再次隆重的来介绍一下它,条件语句是通过对一条或多条语句判断的返回结果(True或False)来选择执行下一步命令的,比较常用的就是if/else语句,它在代码上可以这么表达(要注意语句直接的缩进关系哦): if 判断条件1: 执行语句1 else: 执行语句2 if 判断条件2: 执行语句3 else: 执行语句4 if/else的执行逻辑是:如果满足if后面的判断条件,就执行if的语句块,否则就执行else的语句…
当程序出现错误时,系统会自动引发异常.除此之外,Python也允许程序自行引发异常,自行引发异常使用 raise 语句来完成. 很多时候,系统是否要引发异常,可能需要根据应用的业务需求来决定,如果程序中的数据.执行与既定的业务需求不符,这就是一种异常.由于与业务需求不符而产生的异常,必须由程序员来决定引发,系统无法引发这种异常. 如果需要在程序中自行引发异常,则应使用 raise 语句.raise 语句有如下三种常用的用法: raise:单独一个 raise.该语句引发当前上下文中捕获的异常(比…
python入门学习:7.函数 关键点:函数 7.1 定义函数7.2 传递实参7.3 返回值7.4 传递列表7.5 传递任意数量的实参7.6 将函数存储在模块中 7.1 定义函数   使用关键字def告诉python要定义一个函数,紧接着跟着函数名,冒号.后面的缩进构成函数体.例如: 1def func_name():2    函数体34def greet_user():5    """显示简单问候语"""6    print("hel…
镇场诗: 诚听如来语,顿舍世间名与利.愿做地藏徒,广演是经阎浮提. 愿尽吾所学,成就一良心博客.愿诸后来人,重现智慧清净体.------------------------------------------code: def Test() : var=5 print(var) #局部变量 var=10 print(var) #全局变量 Test() print(var) #全局变量 #因为全局变量与局部变量存储在两个不同的空间 result: ============= RESTART: C:…
认识 Python 人生苦短,我用 Python -- Life is short, you need Python 目标 Python 的起源 为什么要用 Python? Python 的特点 Python 的优缺点 01. Python 的起源 Python 的创始人为吉多·范罗苏姆(Guido van Rossum) 1989 年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的解释程序,作为 ABC 语言的一种继承(感觉下什么叫牛人) ABC 是由吉多参加设计的一种教…