python语言
文章平均质量分 84
python学习
lanhuazui10
这个作者很懒,什么都没留下…
展开
-
python全局变量和局部变量
所谓作用域(Scope),就是变量的有效范围,就是变量可以在哪个范围以内使用。有些变量可以在整段代码的任意位置使用,有些变量只能在函数内部使用,有些变量只能在 for 循环内部使用。变量的作用域由变量的定义位置决定,在不同位置定义的变量,它的作用域是不一样的。本节我们只讲解两种变量,局部变量和全局变量。局部变量在函数内部定义的变量,它的作用域也仅限于函数内部,出了函数就不能使用了,我们将这样的变量称为局部变量(Local Variable)。要知道,当函数被执行时,Python 会为其分配一块临时转载 2021-10-25 00:48:10 · 1211 阅读 · 1 评论 -
python函数返回值
到目前为止,我们创建的函数都只是对传入的数据进行了处理,处理完了就结束。但实际上,在某些场景中,我们还需函数将处理的结果反馈回来,就好像主管向下级员工下达命令,让其去打印文件,员工打印好文件后并没有完成任务,还需要将文件交给主管。用 def 语句创建函数时,可以用return语句指定应该返回的值,该返回值可以是任意类型。需要注意的是,return 语句在同一函数中可以出现多次,但只要有一个得到执行,就会直接结束函数的执行。函数中,使用 return 语句的语法格式如下:[return [返回值]..转载 2021-10-24 20:57:57 · 3149 阅读 · 0 评论 -
python函数形参和实参使用说明
Python位置参数位置参数,有时也称必备参数,指的是必须按照正确的顺序将实际参数传到函数中,换句话说,调用函数时传入实际参数的数量和位置都必须和定义函数时保持一致。实参和形参数量必须一致在调用函数,指定的实际参数的数量,必须和形式参数的数量一致(传多传少都不行),否则python解释器会抛出 TypeError 异常,并提示缺少必要的位置参数。例如:def girth(width , height): return 2 * (width + height)#调用函数时,必须传转载 2021-10-24 20:49:15 · 5542 阅读 · 0 评论 -
python with as用法详解
任何一门编程语言中,文件的输入输出、数据库的连接断开等,都是很常见的资源管理操作。但资源都是有限的,在写程序时,必须保证这些资源在使用过后得到释放,不然就容易造成资源泄露,轻者使得系统处理缓慢,严重时会使系统崩溃。例如,前面在介绍文件操作时,一直强调打开的文件最后一定要关闭,否则会程序的运行造成意想不到的隐患。但是,即便使用 close() 做好了关闭文件的操作,如果在打开文件或文件操作过程中抛出了异常,还是无法及时关闭文件。为了更好地避免此类问题,不同的编程语言都引入了不同的机制。在python中..转载 2021-10-24 18:58:43 · 16861 阅读 · 0 评论 -
【转】Python - 浅拷贝的四种实现方式
方式一:使用切片 [:]列表# 浅拷贝 [:]old_list = [1, 2, [3, 4]]new_list = old_list[:]old_list.append(5)old_list[2][0] += 97print("Old list:", old_list, "old list id:", id(old_list), " old list[2] id:", id(old_list[2]))print("new list:", new_list, "new list id:"转载 2021-10-24 18:21:43 · 272 阅读 · 0 评论 -
可变对象和不可变对象的赋值
前言Python 中不存在值传递,一切传递的都是对象的引用,也可以认为是传址名词解释变量:存储对象的引用 对象:会被分配一块内存,存储实际的数据,比如字符串、数字、列表 引用:变量指向对象,可以理解为指针实际的一种应用场景有一个变量 a,存储了一个值 此时想用另一个变量 b 暂时存储变量 a 的值,以便后续使用 然后继续修改变量 a 的值,但修改的时候并不想同步更改变量 b 的值a=1b=aa=2对象赋值Python 的赋值语句并不是创建一个新对象,只是创建了.转载 2021-10-24 18:15:19 · 202 阅读 · 0 评论 -
Python lambda函数表达式
对于定义一个简单的函数,python还提供了另外一种方法,即使用本节介绍的 lambda 表达式。lambda 表达式,又称匿名函数,用来表示内部仅包含 1 行表达式的函数。如果一个函数的函数体仅有 1 行表达式,则该函数就可以用 lambda 表达式来代替。lambda 表达式的语法格式如下:name = lambda [list] : 表达式其中,定义 lambda 表达式,必须使用 lambda 关键字;冒号前的是参数,可以有多个,用逗号隔开,list]作为可选参数,等同于定义函数时指定的转载 2021-10-17 21:52:44 · 455 阅读 · 0 评论 -
python zip,reversed及sorted函数
zip函数zip() 函数是python内置函数之一,可以将多个序列(列表、元组、字典、集合、字符串以及 range() 区间构成的列表)“压缩”成一个 zip 对象。所谓“压缩”,其实就是将这些序列中对应位置的元素重新组合,生成一个个新的元组。和 Python 3.x 版本不同,Python 2.x 版本中的 zip() 函数会直接返回列表,而不是返回 zip 对象。但是,返回的列表或者 zip 对象,其包含的元素(都是元组)是相同的。zip() 函数的语法格式为:zip(itera.转载 2021-10-17 20:57:27 · 396 阅读 · 0 评论 -
列表推导式、元组推导式、字典推导式和集合推导式详解
推导式(又称解析器),是 Python 独有的一种特性。使用推导式可以快速生成列表、元组、字典以及集合类型的数据,因此推导式又可细分为列表推导式、元组推导式、字典推导式以及集合推导式。Python列表推导式列表推导式可以利用 range 区间、元组、列表、字典和集合等数据类型,快速生成一个满足指定需求的列表。列表推导式的语法格式如下:[表达式 for 迭代变量 in 可迭代对象 [if 条件表达式] ]此格式中,[if 条件表达式] 不是必须的,可以使用,也可以省略。通过列表推导式的语法转载 2021-10-17 20:36:38 · 2811 阅读 · 0 评论 -
python直接赋值、深拷贝和浅拷贝解释
概念:理解这几个概念主要搞清楚赋值或者拷贝前后,对象和对象的各个元素地址是否被改变了,如果地址不一样了肯定不会有影响,地址前后一样,对象之间可能会相互影响。直接赋值:当我们把对象赋值给另一个变量的时候,这个变量并没有拷贝这个对象,而只是拷贝了这个对象的引用而已,两个对象及对象各个元素间的地址完全一样的。所以修改一个对象,另一个会跟着改变浅拷贝:指的是重新分配一块内存,创建一个新的对象,两个对象的地址不一样了,但里面的元素是原对象中各个子对象的引用,各个元素的地址是完全一样的。深拷贝:是指重新转载 2021-10-17 20:03:18 · 216 阅读 · 0 评论 -
python 集合(set)
python中的集合,和数学中的集合概念一样,用来保存不重复的元素,即集合中的元素都是唯一的,互不相同。从形式上看,和字典类似,Python 集合会将所有元素放在一对大括号 {} 中,相邻元素之间用“,”分隔,如下所示:{element1,element2,...,elementn}其中,elementn 表示集合中的元素,个数没有限制。从内容上看,同一集合中,只能存储不可变的数据类型,包括整形、浮点型、字符串、元组,无法存储列表、字典、集合这些可变的数据类型,否则 Python 解释器会抛出..转载 2021-10-17 18:46:31 · 1129 阅读 · 0 评论 -
Python 字典(dict)
字典(dict)是一种无序的、可变的序列,它的元素以“键值对(key-value)”的形式存储。相对地,列表(list)和元组(tuple)都是有序的序列,它们的元素在底层是挨着存放的。字典类型是 Python 中唯一的映射类型。“映射”是数学中的术语,简单理解,它指的是元素之间相互对应的关系,即通过一个元素,可以唯一找到另一个元素。如图 1 所示。图 1 映射关系示意图字典中,习惯将各元素对应的索引称为键(key),各个键对应的元素称为值(value),键及其关联的值称为“键值对”。总转载 2021-10-17 14:14:51 · 3548 阅读 · 0 评论 -
Python 元组(tuple)
元组(tuple)是python中另一个重要的序列结构,和列表类似,元组也是由一系列按特定顺序排序的元素组成。元组和列表(list)的不同之处在于:列表的元素是可以更改的,包括修改元素值,删除和插入元素,所以列表是可变序列; 而元组一旦被创建,它的元素就不可更改了,所以元组是不可变序列。元组也可以看做是不可变的列表,通常情况下,元组用于保存无需修改的内容。从形式上看,元组的所有元素都放在一对小括号( )中,相邻元素之间用逗号,分隔,如下所示:(element1, element2, ....转载 2021-10-17 13:54:16 · 21197 阅读 · 0 评论 -
python列表(list)
在实际开发中,经常需要将一组(不只一个)数据存储起来,以便后边的代码使用。说到这里,一些读者可能听说过数组(Array),它就可以把多个数据挨个存储到一起,通过数组下标可以访问数组中的每个元素。需要明确的是,python中没有数组,但是加入了更加强大的列表。如果把数组看做是一个集装箱,那么 Python 的列表就是一个工厂的仓库。大部分编程语言都支持数组,比如C语言、C++、java、PHP、JS等。从形式上看,列表会将所有元素都放在一对中括号[ ]里面,相邻元素之间用逗号,分隔,如下所示:[转载 2021-10-17 13:39:10 · 3963 阅读 · 0 评论 -
python跳出循环break和continue
在执行 while 循环或者 for 循环时,只要循环条件满足,程序将会一直执行循环体,不停地转圈。但在某些场景,我们可能希望在循环结束前就强制结束循环,python提供了 2 种强制离开当前循环体的办法:使用 continue 语句,可以跳过执行本次循环体中剩余的代码,转而执行下一次的循环。 只用 break 语句,可以完全终止当前循环。break使用:break 语句可以立即终止当前循环的执行,跳出当前所在的循环结构。无论是 while 循环还是 for 循环,只要执行 break 语句,就会转载 2021-10-10 21:31:36 · 1358 阅读 · 0 评论 -
python字符串使用
若干个字符的集合就是一个字符串(String),python中的字符串必须由双引号" "或者单引号' '包围,具体格式为:"字符串内容"'字符串内容'字符串的内容可以包含字母、标点、特殊符号、中文、日文等全世界的所有文字。下面都是合法的字符串:"123789" "123abc" "http://c.biancheng.net/python/" "C语言中文网成立8年了"Python 字符串中的双引号和单引号没有任何区别,需要注意python中变量是不能加双引号或者单引号的。处理字转载 2021-10-10 14:10:32 · 297 阅读 · 0 评论 -
python流程控制知识点总结
python变量:在强类型的编程语言中,定义变量时要指明变量的类型,而且赋值的数据也必须是相同类型的,C语言、C++、java是强类型语言的代表。下面以 C++ 为例来演示强类型语言中变量的使用:int n = 10; //int表示整数类型n = 100;n = "http://c.biancheng.net/socket/"; //错误:不能将字符串赋值给整数类型url = "http://c.biancheng.net/java/"; //错误:没有指明类型的变量是没有定义的,不能原创 2021-10-10 13:09:01 · 1076 阅读 · 0 评论 -
字符串/列表/元组/字典/集合的相互转换
元组、字典、集合都是根据列表基础上进行转换的,那么所有下面这些类型理论上都是可以相互转换的:(当然,字典的结构有点不同)列表转换:list(str1) 将字符串转化成列表元组转换:tuple(list01) 将列表转换为元组字典转换:dict(zip(keylist,valuelist)) 列表转换成字典集合转换:set(list01) 列表转换为集合str1 = 'hi hello world'list01 = []字符串与列表的相互转换:list()命.转载 2021-09-20 17:53:05 · 3174 阅读 · 0 评论 -
序列类型及常用操作
所谓序列,指的是一块可存放多个值的连续内存空间,这些值按一定顺序排列,可通过每个值所在位置的编号(称为索引)访问它们。为了更形象的认识序列,可以将它看做是一家旅店,那么店中的每个房间就如同序列存储数据的一个个内存空间,每个房间所特有的房间号就相当于索引值。也就是说,通过房间号(索引)我们可以找到这家旅店(序列)中的每个房间(内存空间)。在Python中,序列类型包括字符串、列表、元组、集合和字典,这些序列支持以下几种通用的操作,但比较特殊的是,集合和字典不支持索引、切片、相加和相乘操作。字符串也..转载 2021-09-19 22:15:31 · 1080 阅读 · 0 评论 -
Python中strip函数几种用法
用户输入数据时,很有可能会无意中输入多余的空格,或者在一些场景中,字符串前后不允许出现空格和特殊字符,此时就需要去除字符串中的空格和特殊字符。这里的特殊字符,指的是制表符(\t)、回车符(\r)、换行符(\n)等。python 中,字符串变量提供了 3 种方法来删除字符串中多余的空格和特殊字符,它们分别是:str.strip():删除字符串前后(左右两侧)的空格或特殊字符。 str.lstrip():删除字符串前面(左边)的空格或特殊字符。 str.rstrip():删除字符串后面(右边)的转载 2021-08-29 21:00:59 · 99757 阅读 · 4 评论 -
python dir查看模块属性和方法函数
python 内置方法有很多,无论是初学者还是精通python 的程序员都不能全部即住所有的方法。dir() 函数算的上是 Python 比较常用的也很好用的一个函数,它返回包含查询对象的所有属性和方法名称的列表。1、dir() 内置函数的作用直接使用 dir()函数可以看到所有已创建的变量,这些已经创建的变量会保存在globals全局中。也通过输入形参方式可以查看对象内的所有的属性和方法,在 python 中任何东西都是对象,一种数据类型,一个模块等,都有子集的属性和方法,除了常用的方法外,其他的转载 2021-08-29 19:41:23 · 2887 阅读 · 1 评论 -
python清除变量方法
清理单个变量:在代码中的命令:删除单个变量,在代码中加入运行即可del 变量清理控制台的命令历史:clear通过脚本方式删除自定义变量:在python中创建多个变量,通过dir()函数,可以看到所有已创建变量,这些已经创建的变量会保存在globals全局中,如果想快速删除可以使用如下脚本删除#删除clear_env.pydef __clear_env():for keyin globals().keys():if not key.startswith("__"原创 2021-08-29 19:23:00 · 16665 阅读 · 0 评论 -
python内置函数大全
内置函数在文章https://blog.csdn.net/wmj2004/article/details/53215967基础上整理过内置函数,一般都是因为使用频率比较频繁或是是元操作,所以通过内置函数的形式提供出来,通过对python的内置函数分类分析可以看出来:基本的数据操作基本都是一些数学运算(当然除了加减乘除)、逻辑操作、集合操作、基本IO操作,然后就是对于语言自身的反射操作,还有就是字符串操作,也是比较常用的,尤其需要注意的是反射操作。python支持的内置函数截图如下:https:/转载 2021-08-28 13:48:58 · 435 阅读 · 0 评论 -
搞懂Python切片操作
利用python解决问题的过程中,经常会遇到从某个对象中抽取部分值的情况。“切片”操作正是专门用于实现这一目标的有力武器。理论上,只要条件表达式得当,可以通过单次或多次切片操作实现任意目标值切取。切片操作的基本语法比较简单,但如果不彻底搞清楚内在逻辑,也极容易产生错误,而且这种错误有时隐蔽得较深,难以察觉。本文通过详细例子总结归纳了切片操作的各种情形,下文均以list类型作为实验对象,其结论可推广至其他可切片对象。一、 Python可切片对象的索引方式包括:正索引和负索引两部分,如下图所示,以lis转载 2021-08-28 12:08:14 · 274 阅读 · 0 评论 -
python基本数据类型
学习任何一门语言,了解基本数据类型都是最重要的,因为再复杂的语法都是通过基本数据类型构构造出来的,所以了解基本的数据类型是重中之重,本文主要参考了网络一些文章,重点在于讲清楚python的各种基本类型的分类和使用方法,Python基本数据类型一般分为: 非组合数据类型:数字、字符串 组合数据类型:集合 、序列类型(列表、元组)、字典。掌握序列类型,可以应对绝大多数组合数据类型的应用场景。技巧: 可以使用type(x),去得到变量x的类型。例如:>&...转载 2021-08-28 11:17:03 · 444 阅读 · 0 评论