Python基础全览:可变与不可变类型、变量作用域

0 下载量 32 浏览量 更新于2024-08-29 收藏 75KB PDF 举报
"从零开始学python第八篇,涵盖了可变类型和不可变类型、局部变量和全局变量、函数参数以及函数的递归等基础知识。" 在Python编程中,理解数据类型的性质是至关重要的。可变类型与不可变类型是Python中的两类基本数据类别。不可变类型包括数字(如int, bool, float, complex, long(2.x))、字符串(str)和元组(tuple),这些类型的对象一旦创建,其内存中的数据就不能被修改。相反,可变类型如列表(list)和字典(dict)允许在原有对象的基础上进行修改。字典的键(key)必须使用不可变类型,以确保通过哈希算法高效地查找和操作数据。 哈希函数(hash())在Python中用于不可变类型,它返回一个整数值,该值代表了输入数据的特征码,相同的输入会产生相同的哈希值,而不同的输入则会产生不同的哈希值。哈希函数在字典操作中起着关键作用,使得查找、添加、删除和更新键值对变得快速。 局部变量和全局变量则是关于变量作用域的概念。局部变量仅在定义它的函数内部有效,当函数执行结束,这些变量就会被销毁。不同函数可以有同名的局部变量,但它们彼此独立。局部变量常用于存储函数内部运算过程中的临时数据。而全局变量在整个程序范围内都是可见的,任何函数都能访问。需要注意的是,函数内部默认使用的是局部变量,如果想要在函数内部修改全局变量,需要使用`global`关键字进行声明。 函数参数在Python中可以有多种形式,如位置参数、关键字参数、默认参数值、可变参数(*args)和关键字可变参数(kwargs)。函数递归是指函数在其定义中调用自身,通常用于解决具有自相似性的问题。递归需要谨慎使用,因为它可能导致栈溢出,尤其是在没有正确设定退出条件时。 本篇内容是对Python基础知识的补充和完善,通过学习这些知识点,读者将能更深入地理解Python的数据处理和控制流程,为进一步学习面向对象编程和项目实战打下坚实的基础。