Python 之 基础知识(五)
一、变量
1、引用 id()
函数传参 与 返回值 都是传递保存的数据的引用


2、可变和不可变类型(变量的引用地址只在赋值语句后变化)
- 不可变类型 内存中的数据不允许被修改
- 数字类型 int,bool,float,complex,long(2,x)
- 字符串 str
- 元组 tuple
- 可变类型 内存中的数据可以被修改
- 列表 list
- 字典 dict
- 字典的key只能使用不可变类型数据
哈希(hash)
- Python中内置一个叫hash(0)的函数
- 接受一个不可变型的数据作为参数 返回结果为一个整数
- 哈希是一种算法,其作用就是提取数据的特征码(指纹)
- 相同内容得到相同结果
- 不同内容得到不同结果
- Python中设置字典的键值对时,首先对key进行hash 来决定如何在内存中保存字典的数据,以方便后续的增删改查
- 键值对的key必须是不可变类型的数据
- value 可以是任意类型的数据
- Python中内置一个叫hash(0)的函数
3、局部变量和全局变量
- 函数内部不允许直接修改全局变量的引用--即使用赋值语句修改全局变量的值
- 那么如何在函数内部修改全局变量的值?
- 使用global命令进行声明
- global关键字会告诉解释器后面的变量是一个全局变量
- 再用赋值语句时就不会创建局部变量


全局变量前可以加g_ / gl_(快捷键 shift+F6 修改名字)
二、函数
1、元组可以返回多个值


2、交换两个变量
# 等号右边是一个元组,只是省略了括号
a,b = b, a
3、在函数内部使用方法修改可变参数会影响外部实参
4、列表变量遇到+= 本质上是执列表变量的extend方法

5、缺省参数(给某个参数指定的一个默认值)

- 例子:(一般使用最常见的值作为缺省参数的默认值)
- 带有默认值的缺省参数要放在参数列表的末尾!!!
- 多个有默认值的缺省参数时,要指定参数名
6、多值参数(函数要处理的参数个数不确定)
- 参数名前增加一个* 可以接收元组
- 参数名前增加一个** 可以接收字典
一般习惯以下两个名字:
- *args 存放元组参数 arguements的缩写 变量的含义
- **kwargs 存放元组参数 keyword的缩写 键值对参数的含义
拆包

例子:

Python 之 基础知识(五)的更多相关文章
- Python数据挖掘——基础知识
Python数据挖掘——基础知识 数据挖掘又称从数据中 挖掘知识.知识提取.数据/模式分析 即为:从数据中发现知识的过程 1.数据清理 (消除噪声,删除不一致数据) 2.数据集成 (多种数据源 组合在 ...
- Python基础知识(五)------字典
Python基础知识(四)------字典 字典 一丶什么是字典 dict关键字 , 以 {} 表示, 以key:value形式保存数据 ,每个逗号分隔 键: 必须是可哈希,(不可变的数据类型 ...
- Python学习-基础知识-2
目录 Python基础知识2 一.二进制 二.文字编码-基础 为什么要有文字编码? 有哪些编码格式? 如何解决不同国家不兼容的编码格式? unicode编码格式的缺点 如何既能全球通用还可以规避uni ...
- Python 面向对象基础知识
面向对象基础知识 1.什么是面向对象编程? - 以前使用函数 - 类 + 对象 2.什么是类什么是对象,又有什么关系? class 类: def 函数1(): pass def 函数2(): pass ...
- python 爬虫基础知识一
网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本. 网络爬虫必备知识点 1. Python基础知识2. P ...
- Python:基础知识
python是一种解释型.面向对象的.带有动态语义的高级程序语言. 一.下载安装 官网下载地址:https://www.python.org/downloads 下载后执行安装文件,按照默认安装顺序安 ...
- 第2章 Python编程基础知识 第2.1节 简单的Python数据类型、变量赋值及输入输出
第三节 简单的Python数据类型.变量赋值及输入输出 Python是一门解释性语言,它的执行依赖于Python提供的执行环境,前面一章介绍了Python环境安装.WINDOWS系列Python编辑和 ...
- python基础知识五
数据结构基本上就是---它们可以处理一些数据的结构.或者说,它们是用来存储一组相关数据的. python中有三种内建的数据结构---列表.元祖和字典. 我们将会学习如何使用它们,以及它们如何使编程变得 ...
- python基础知识五 各类型数据方法补充,转换,分类,编码+坑中菜
3.9各类型数据方法补充,转换,分类,编码,坑中菜 3.9.1数据类型方法补充 1.str:不可变 补充方法 s1.capitalize():首字母大写 s1 = "alex" s ...
随机推荐
- Linux常见英文报错中文翻译
Linux常见英文报错中文翻译(菜鸟必知) 1.command not found 命令没有找到 2.No such file or directory 没有这个文件或目录 3.Permission ...
- 【剑指Offer】53、表示数值的字符串
题目描述: 请实现一个函数用来判断字符串是否表示数值(包括整数和小数).例如,字符串"+100", "5e2", "-123",&q ...
- iptables 实现内网转发上网
介绍 通过iptables做nat转发实现所有内网服务器上网. 操作 首先开启可以上网的服务器上的内核路由转发功能.这里我们更改/etc/sysctl.conf 配置文件. [root@web1 /] ...
- 从零开始创建一个 PHP 扩展
创建一个扩展的基本步骤都有哪些.示例中,我们将实现如下功能: <?phpecho say();?> 输出内容: $ php ./test.php$ hello word 在扩展中实现一个s ...
- Docker 搭建 ELK 读取微服务项目的日志文件
思路: 在docker搭建elasticsearch与kibana来展示日志,在微服务部署的机子上部署logstash来收集日志传到elasticsearch中,通过kibana来展示,logstas ...
- 在做公司项目是时,昨天晚上还好的,但是第二天启动tomcat发现tomcat启动了,但是没把项目启动起来
1.问题:在做公司项目是时,昨天晚上还好的,但是第二天启动tomcat发现tomcat启动了,但是没把项目启动起来 2.问题排除: 1)昨天晚上还好着呢,并且没改动代码,排除代码问题.日志中无报错信息 ...
- (25)Spring Boot使用自定义的properties【从零开始学Spring Boot】
spring boot使用application.properties默认了很多配置.但需要自己添加一些配置的时候,我们应该怎么做呢. 若继续在application.properties中添加 如: ...
- Spring bean生命周期(一)
当容器销毁的时候,先调用DisposableBean实现类的destroy()方法,在调destory-method方法.
- Go在Ubuntu 14.04 64位上的安装过程
1. 从 https://golang.org/dl/ 或 https://studygolang.com/dl 下载最新的发布版本go1.10即go1.10.linux-amd64.tar.gz ...
- BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第12章节--SP 2013中远程Event Receivers 总结
BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第12章节--SP 2013中远程Event Receivers 总结 本章节向你介绍了SP平台上eve ...

