首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python语言常用的49个基本概念及含义

动态类型(dynamic type):在Python中,不需要声明变量的类型,第一次给某个变量赋值的语句会创建变量,每次重新赋值时会根据等号右侧表达式值的类型来动态改变变量的类型。...自定义函数(function):可以使用关键字def或lambda定义,实现对代码的封装和重复使用。 递归函数:如果一个函数的代码中又调用这个函数自己,这样的函数叫递归函数。...在Python中,变量自定义开始,直到当前函数或文件结束,都是可以使用的,除非被声明为全局变量或者被更小的作用域内同名变量暂时隐藏。...闭包作用域(enclosing scope):在Python中允许嵌套定义函数,也就是一个函数的定义中可以再定义函数。...星号表达式(star expression):也属于序列解包的用法,在可迭代对象前面加一个星号表示把其中的元素都取出来,常见于把可迭代对象中的全部元素作为函数的位置参数的场合,例如print(*'abc

2.8K21

python的变量

变量是用来存储值的所在处,变量具有名字以及数据类型两种属性。数据类型决定了内容中不同类型的值的存储结构。变量名用来调用变量。    ...Python 是动态类型语言,所以说不需要预先声明变量类型就可以直接使用。变量的类型和值是在赋值时决定的。... 107, line 1 TypeError: 'int' object is not callable 当我把sum赋值为1后,在用sum求list1的和,就会引发异常,因为此时sum是1了,而不再是一个函数...Python Shell, prompt 110, line 1 TypeError: 'int' object is not iterable 异常:int不是可迭代对象 然后将int换成str x,... to unpack 异常:太多的值需要解包 关于解包的知识在函数传参的内容中会详细讲解

84610
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Python函数

    Python 01 代码块与笔记 函数 参数传递1 """ 参数传递包含:可更改(mutable)与不可更改(immutable)对象 在 Python 中,string tuple number..." l = [1, 2, 3] """ 在 Python 中,类型属于对象,变量是没有类型的: 以上代码中: " Mark " 是 String 类型,[1,2,3] 是 list 类型,而变量...1 return n + _sum(n-1) _sum = _sum(4) # 10 print(_sum) """ 递归函数的缺点是使用递归函数需要注意防止栈溢出 在计算机中...Python 中,迭代是通过 for ... in 来完成的 可迭代对象(Iterable):可以直接作用于 for 循环的对象,无论有无下标 可以直接作用于 for 的数据类型一般分为两种: 1...Python 内置的 enumerate 枚举函数可以把一个 list 变成索引-元素对, 这样就可以在for循环中同时迭代索引和元素本身 """ # 同时引用两个变量 l = [(1, 2)

    99770

    【Python内功心法】:深挖内置函数,释放语言潜能

    二、高级内置函数 ⭐1. enumerate函数 enumerate是Python的一个内置函数,它在遍历(如循环)过程中为可迭代对象(如列表、元组、字符串等)的每个元素生成索引号,这样就可以同时访问到元素的索引和值...基本语法: exec(object[, globals[, locals]]) object: 一个包含 Python 代码的字符串,或者一个代码对象。...在 eval() 函数中,局部变量会被设置为 eval() 函数内部定义的变量。...6. zip函数 zip() 是 Python 中的一个内置函数,用于将多个可迭代对象(如列表、元组、字符串等)打包成一个元组的列表(在 Python 2 中返回列表,在 Python 3 中返回迭代器...map() 是 Python 的一个内置函数,它接受一个函数和一个或多个可迭代对象作为输入,将函数依次应用于可迭代对象的每个元素上,并返回一个由处理结果组成的迭代器(在 Python 2 中返回列表,

    12610

    看代码学习python基础

    Python中的“类型”属于对象,而不是变量,每个对象都包含有头部信息,比如"类型标示符" "引用计数器"等 """ #共享引用及在原处修改:对于可变对象,要注意尽量不要共享引用...generator object next(G), next(G), next(G) # 和上述中的生成器函数的返回值一致 #(1)生成器(生成器函数/...# 改变全局变量X #-- 函数的默认值是在函数定义的时候实例化的 而不是在调用的时候 例子: def foo(numbers=[]): # 这里的[]是可变的...# 返回当前的变量列表 map(function, iterable,...(变量名在列表中为字符串形式) #-- 可以使用__name__进行模块的单元测试:当模块为顶层执行文件时值为'__main__' 当模块被导入时为模块名 if __name__ ==

    89421

    10个鲜为人知的Python技巧,助你提升编程技能!

    在本文中,我们将深入探讨十个这样的技巧,这些技巧可能不在你的日常工具包中,但可以对你的编码工作产生重大影响。...从简化字典操作到掌握路径操作,从高级迭代模式到轻量级数据结构,这些技巧中的每一个都可以让你一窥Python功能的丰富性和深度。...无论你是想要扩展知识库的经验丰富的Pythonista,还是渴望充分发挥该语言潜力的新手,这些技巧都一定会在你的Python之旅中为你提供启发和助力。...在循环或解包时,当不需要该值时,通常将“_”用作一次性变量,从而使你的代码更清晰,并表明该变量被故意忽略。...尝试这些技巧并将它们融入你的编码实践中,以成为更熟练的Python开发人员。 万水千山总是情,点个 行不行。

    14410

    Python学习笔记(第七章)

    函数变量的作用域 变量可见性 嘿!听说过全局变量语言局部变量吗? 全局变量;定义在函数里,如函数内定义的变量不能被全局引用 局部变量;定义在函数外,可以被全局引用。...专业总结;在函数里定义的参数以及变量,都称为局部变量,出了这个函数,这些变量都是无效的,当执行完该函数后,函数所有的数据都是被自动删除的。...什么是闭包,不要着急,咱先看看咱的新朋友 global关键词 全局变量的作用域是整个模块,代码段里所有的函数内部都能够访问到全局变量,函数内部也可以,但是不建议在函数内去尝试修改人家,那样的h话Python...object) | filter(function or None, iterable) --> filter object | | Return an iterator yielding those...每天做递归的笔记,这么晚我应该给点福利才是。好吧,分享点好玩的 后台回复854获取《Python树莓派编程》

    44110

    千行代码入门python

    Python中的“类型”属于对象,而不是变量,每个对象都包含有头部信息,比如"类型标示符" "引用计数器"等 """ # 共享引用及在原处修改:对于可变对象,要注意尽量不要共享引用!..."%(name)s is %(age)d" % vars()  # vars()函数调用返回一个字典,包含了所有本函数调用时存在的变量 # -- Python中的字符串格式化实现2--字符串格式化调用方法...(Python3.x中才有) spam = ham = 'no'  # 多目标赋值运算,涉及到共享引用 spam += 42  # 增强赋值,涉及到共享引用 # -- 序列赋值 序列解包 [a,...X为全局变量 print(X)  # 打印全局变量X     X = 88  # 改变全局变量X # -- 函数的默认值是在函数定义的时候实例化的 而不是在调用的时候 例子: def foo(...__all__列表指定from*时复制出去的变量名(变量名在列表中为字符串形式) # -- 可以使用__name__进行模块的单元测试:当模块为顶层执行文件时值为'__main__' 当模块被导入时为模块名

    58431

    10分钟快速入门Python函数式编程

    你还会了解到列表解析和其他形式的解析。 ▌编程式函数 在命令式编程中,你需要给计算机一系列任务,然后计算机会一一执行。在执行过程中,计算机可以改变其状态。...因此在函数式编程中,函数不会产生“副作用”。“副作用”是指函数可能会修改外部变量的值。...在函数式编程中,改变变量是大忌,而且让函数改变外部变量也是绝对禁止的。函数唯一能做的事是执行计算然后返回结果。 现在你可能在想:没有变量,就没有副作用吗?为什么这么做很管用?...这么做可以防止在我们已经知道答案的情况下,程序依然反复运行同一函数。 一般来说,在函数式编程中,我们不使用循环。而是用递归。递归是一个数学概念,我们通常将其理解为“自己喂自己”。...在一个递归函数中,函数将自己作为子函数反复调用。这里有一个易于理解的递归函数的 Python 例子: def factorial_recursive(n): # Base case: 1!

    69220

    记录我的Python学习笔记

    在计算机中,函数调用是通过栈(stack)这种数据结构实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧。由于栈的大小不是无限的,所以,递归调用的次数过多,会导致栈溢出。...所以,如果列表元素可以按照某种算法推算出来,那我们是否可以在循环的过程中不断推算出后续的元素呢?这样就不必创建完整的list,从而节省大量的空间。...匿名函数 当我们在传入函数时,有些时候,不需要显式地定义函数,直接传入匿名函数更方便。 在Python中,对匿名函数提供了有限支持。...模块 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护。...和普通的函数相比,在类中定义的函数只有一点不同,就是第一个参数永远是实例变量self,并且,调用时,不用传递该参数。

    77020

    让你的Python代码更加Pythonic

    class ThisIsAClass(object): pass 函数:小写,用下划线隔开 def this_is_a_func(): pass 变量: 小写,用下划线隔开 this_is_a_variable...= a a = b b = temp python中,更加简洁的方法: a = 5 b = 6 a, b = b, a print(a, b) 输出:6 5 2.多个变量赋值 python中可以一行代码...解压列表/元组的元素,赋值给不同的变量 a, b, c = [1,2,3] print(a, b, c) 输出:1 2 3 函数中的解包操作 在函数调用中,* 能够将元组或列表解包成不同的参数。...def func(a, b, c, d): print(a, b, c, d) args = [1, 2, 3, 4] func(*args) 输出:1 2 3 4 在函数调用中,** 会以键...Python 内置函数,它可以将多个序列(列表、元组、字典、集合、字符串等)中对应位置的元素重新组合,生成一个个新的元组。

    75120

    python 继承与多重继承

    此信息将被用来解析属性引用:如果请求的属性在类中找不到,搜索将转往基类中进行查找。 如果基类本身也派生自其他某个类,则此规则将被递归地应用。...(对 C++ 程序员的提示:Python 中所有的方法实际上都是 virtual 方法。) 在派生类中的重载方法实际上可能想要扩展而非简单地替换同名的基类方法。...Python有两个内置函数可被用于继承机制: 使用 isinstance() 来检查一个实例的类型: isinstance(obj, int) 仅会在 obj....因此,如果某一属性在 DerivedClassName 中未找到,则会到 Base1 中搜索它,然后(递归地)到 Base1 的基类中搜索,如果在那里未找到,再到 Base2 中搜索,依此类推。...总而言之,这些特性使得设计具有多重继承的可靠且可扩展的类成为可能。 私有变量 那种仅限从一个对象内部访问的“私有”实例变量在 Python 中并不存在。

    1.5K10

    NVIDIA工程师小姐姐的Python隐藏技巧合集,推特2400赞,代码可以直接跑

    和 map、filter 和 reduce 这样的函数搭配使用,尤其有效。 map(fn,iterable) 会把 fn 应用在 iterable 的所有元素上,返回一个map object。...这也是lambda函数又一种优美的使用方法:在创建函数的同一行,就能用上这个函数。...[] 返回的是列表,() 返回的是生成器。 3、类,以及魔术方法 在Python里面,魔术方法 (Magic Methods) 是用双下划线,作为前缀后缀的。...二是 _str_:重载 str() 函数用的。 三是 _iter_:想让object变成迭代器,就用这个。有了它,还可以在object上调用 next() 函数。...(Dictionary) ,它包含了局部命名空间 (Local Namespace) 里定义的变量。

    57051

    再说循环~列表和循环的高级操作

    在前面的课程中,我们已经学习了循环和函数的基本操作,这节内容主要针对循环和函数在项目使用过程中的一些更加有使用价值的操作进行分析和讲解 本节内容: 循环部分 列表构建器 列表动态构建器 循环操作序列对象...循环迭代遍历数据 函数部分 函数递归 参数使用函数 函数中返回函数 匿名函数 偏函数 1....机械先驱维克托 惩戒之箭维鲁斯 龙血武姬希瓦娜 如果此时,我想象其他语言一样,在循环过程中操作当前正在循环的元素的下标呢?...' object is not iterable 我们看到,对于非序列对象,出现对象不是iterable的错误提示 iterable是Python中的迭代对象,序列对象一般都是迭代对象 那怎么判断一个对象是否迭代对象呢...collections import Iterable语句来在当前 # python文件中引入collections模块中的Iterable类型 # 然后通过isinstance来判断我们要循环的对象是否

    1.2K10
    领券