第九课:动态类型

1、在Python中,有一类特殊的对象,是专门用来存储数据的,常见的有数字、字符串、数列、字典等。这些对象是存储在内存中的实体,我们并不能直接接触到它们,在程序中接触的是对象名,是指向这些对象的引用(reference)。

2、

1)对象和引用分离,是动态类型的核心,引用可以随时指向一个新的对象

a = 3
a = 'at'

第一个语句中,3是内存中存储的整数对象,通过赋值,将引用a指向3;

第二个语句中,内存中建立对象'at',将引用a指向了'at',此时3没有引用指向它,Python中会自动将没有引用指向的对象销毁(destruct),释放内存(Python中对于小的整数和短字符串,会缓存,不会频繁建立和销毁)

2)

a = 10
b = a
a = a+1

前两句,将a b指向同一个对象(b=a,是将b也指向a所指的对象),第三句将给a赋值,指向一个新的对象7,此时a b指向不同的对象。总结:如果多个引用指向同一个对象,若其中一个引用的值发生变化,其实这个引用是指向了一个新的对象,并不影响其它引用指向原来的对象。

l1 = [1,2,3]
l2 = l1
l1[0] = 10
print l1,l2,l2[0] 输出:
[10, 2, 3] [10, 2, 3] 10

【普通数据类型和复合数据类型是有区别的,复合数据类型是深拷贝,deepcopy()】如:

aaarticlea/png;base64,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" alt="" />

l1,l2的指向没有发生变化,依然指向那个表。表实际上是包含了多个引用的对象(每个引用是一个元素,比如L1[0],L1[1]..., 每个引用指向一个对象,比如1,2,3), 。而L1[0] = 10这一赋值操作,并不改变L1的指向,而是对L1[0], 也就是表对象的一部份(一个元素),进行操作,所以所有指向该对象的引用都受到影响

(与之形成对比的是,我们之前的赋值操作都没有改变对象自身,只是改变引用指向。)

3)

数列list可以通过引用其元素,改变对象自身(in-place change)。这种对象类型,称为可变数据对象(mutable object),词典也是这样的数据类型。

之前的数字和字符串,不能改变对象本身,只能改变引用的指向,称为不可变数据对象(immutable object);元组(tuple),尽管可以调用引用元素,但不可以赋值,因此不能改变对象自身,所以也算是immutable object.

3、从动态类型看函数参数传递

函数的参数传递,本质上传的是引用。比如:

def f(x):
x = 100
print x a = 1
f(a)
print a

参数x是一个新的引用,指向a所指的对象。如果参数是不可变(immutable)的对象,a和x引用之间相互独立。对参数x的操作不会影响a。这样的传递类似于C语言中的值传递。

如果传递的是可变(mutable)的对象,那么改变函数参数,有可能改变原对象。所有指向原对象的引用都会受影响,编程的时候要对此问题留心。比如说:

def f(x):
x[0] = 100
print x a = [1,2,3]
f(a)
print a

总结

引用和对象的分离,对象是内存中储存数据的实体,引用指向对象。

可变对象,不可变对象

函数值传递

Python补充:第一课 数列list的方法

1、一些内建函数,可用于序列list、元组tuple、字符串

#s为序列

len(s):返回序列中元素的个数

max(s):返回序列中元素的最大值

min(s):返回序列中元素的最小值

all(s):返回True,若序列中元素都为True

any(s):返回True,若序列中任一元素为True

下面的方法主要起查询功能,不改变序列本身, 可用于表和定值表、字符串:

sum(s)         返回:序列中所有元素的和

# x为元素值,i为下标(元素在序列中的位置),可用于表和定值表

s.count(x)     返回: x在s中出现的次数

s.index(x)     返回: x在s中第一次出现的下标

由于定值表的元素不可变更,下面方法只适用于表:

# l为一个表, l2为另一个表

l.extend(l2)        在表l的末尾添加表l2的所有元素

l.append(x)         在l的末尾附加x元素

l.sort()            对l中的元素排序

l.reverse()         将l中的元素逆序

l.pop()             返回:表l的最后一个元素,并在表l中删除该元素

del l[i]            删除该元素

(以上这些方法都是在原来的表的上进行操作,会对原来的表产生影响,而不是返回一个新表。)

下面是一些用于字符串的方法。尽管字符串是定值表的特殊的一种,但字符串(string)类有一些方法是改变字符串的。这些方法的本质不是对原有字符串进行操作,而是删除原有字符串,再建立一个新的字符串,所以并不与定值表的特点相矛盾。

#str为一个字符串,sub为str的一个子字符串。s为一个序列,它的元素都是字符串。width为一个整数,用于说明新生成字符串的宽度。

str.count(sub)       返回:sub在str中出现的次数

str.find(sub)        返回:从左开始,查找sub在str中第一次出现的位置。如果str中不包含sub,返回 -1

str.index(sub)       返回:从左开始,查找sub在str中第一次出现的位置。如果str中不包含sub,举出错误

str.rfind(sub)       返回:从右开始,查找sub在str中第一次出现的位置。如果str中不包含sub,返回 -1

str.rindex(sub)      返回:从右开始,查找sub在str中第一次出现的位置。如果str中不包含sub,举出错误

str.isalnum()        返回:True, 如果所有的字符都是字母或数字

str.isalpha()        返回:True,如果所有的字符都是字母

str.isdigit()        返回:True,如果所有的字符都是数字

str.istitle()        返回:True,如果所有的词的首字母都是大写

str.isspace()        返回:True,如果所有的字符都是空格

str.islower()        返回:True,如果所有的字符都是小写字母

str.isupper()        返回:True,如果所有的字符都是大写字母

str.split([sep, [max]])    返回:从左开始,以空格为分割符(separator),将str分割为多个子字符串,总共分割max次。将所得的子字符串放在一个表中返回。可以str.split(',')的方式使用逗号或者其它分割符

str.rsplit([sep, [max]])   返回:从右开始,以空格为分割符(separator),将str分割为多个子字符串,总共分割max次。将所得的子字符串放在一个表中返回。可以str.rsplit(',')的方式使用逗号或者其它分割符

str.join(s)                返回:将s中的元素,以str为分割符,合并成为一个字符串。

str.strip([sub])           返回:去掉字符串开头和结尾的空格。也可以提供参数sub,去掉位于字符串开头和结尾的sub

str.replace(sub, new_sub)  返回:用一个新的字符串new_sub替换str中的sub

str.capitalize()           返回:将str第一个字母大写

str.lower()                返回:将str全部字母改为小写

str.upper()                返回:将str全部字母改为大写

str.swapcase()             返回:将str大写字母改为小写,小写改为大写

str.title()                返回:将str的每个词(以空格分隔)的首字母大写

str.center(width)          返回:长度为width的字符串,将原字符串放入该字符串中心,其它空余位置为空格。

str.ljust(width)           返回:长度为width的字符串,将原字符串左对齐放入该字符串,其它空余位置为空格。

str.rjust(width)           返回:长度为width的字符串,将原字符串右对齐放入该字符串,其它空余位置为空格。

Python基础学习(第9天)的更多相关文章

  1. Day1 Python基础学习

    一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编写程序,本质仍然是直接操作 ...

  2. 0003.5-20180422-自动化第四章-python基础学习笔记--脚本

    0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...

  3. Day1 Python基础学习——概述、基本数据类型、流程控制

    一.Python基础学习 一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编 ...

  4. Python 基础学习 总结篇

    Python 基础学习总结 先附上所有的章节: Python学习(一)安装.环境配置及IDE推荐 Python学习(二)Python 简介 Python学习(三)流程控制 Python学习(四)数据结 ...

  5. (一)python基础学习

    根据廖雪峰老师的python教程写一些学习总结! Python基础学习 1.使用list和tuple (1)list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时 ...

  6. python基础学习(起步)

    目录 python基础学习(起步) 变量 常量 变量的内存管理 python垃圾回收机制 变量的其他赋值方式 今日编程小题 本人能力有限,若有偏颇之处请读者大大不吝赐教! 祝大家每天都在成长! pyt ...

  7. Python基础学习二

    Python基础学习二 1.编码 utf-8编码:自动将英文保存为1个字符,中文3个字符.ASCll编码被囊括在内. unicode:将所有字符保存为2给字符,容纳了世界上所有的编码. 2.字符串内置 ...

  8. Python基础学习一

    Python基础学习一 1.变量与常量 变量名:大小写英文.数字.下划线的组合,数字不能开头 常量名:习惯上常量用大写字母命名,例如"PI" 2.多行输出 转义符:反斜杠(),如果 ...

  9. Python基础学习五

    Python基础学习五 迭代 for x in 变量: 其中变量可以是字符串.列表.字典.集合. 当迭代字典时,通过字典的内置函数value()可以迭代出值:通过字典的内置函数items()可以迭代出 ...

  10. Python基础学习四

    Python基础学习四 1.内置函数 help()函数:用于查看内置函数的用途. help(abs) isinstance()函数:用于判断变量类型. isinstance(x,(int,float) ...

随机推荐

  1. 003-mysql查询表的数据大小

    在需要备份数据库里面的数据时,我们需要知道数据库占用了多少磁盘大小,可以通过一些sql语句查询到整个数据库的容量,也可以单独查看表所占容量. 1.查看数据库表结构大小,要查询表所占的容量,就是把表的数 ...

  2. Mac 启动和关闭rabbitmq

    1.安装 brew install rabbitmq 2.启动及关闭RabbitMQ服务 前台启动 sudo ./rabbitmq-server    或 sudo su/usr/local/Cell ...

  3. OpenERP学习过程1

    系统为Win7 32位,下载并安装OpenERP: 1. 下载地址http://nightly.odoo.com/7.0/nightly/exe/ 2. 双击开始安装,由于选择的是all-in-one ...

  4. python 各种魔法方法

    目录 自定义序列 反射

  5. 阿里云配置mysql远程连接

    默认是不能用客户端远程连接的,阿里云提供的help.docx里面做了设置说明,mysql密码默认存放在/alidata/account.log 首先登录: mysql -u root -h local ...

  6. 基本数据类型(Day4)

    一 什么是数据? eg:x=10     则10是要存储的数据 二 为什么数据要分不同的类型? 数据是用来表示不同状态的,当然不同的状态可以用不同的数据表示 三 数据类型 1.数字(整型,长整型 ,浮 ...

  7. pyton全栈开发从入门到放弃之数据类型与变量

    一.变量 1 什么是变量之声明变量 #变量名=变量值 age=18 gender1='male' gender2='female' 2 为什么要有变量 变量作用:“变”=>变化,“量”=> ...

  8. scc

    CSS简介 CSS介绍 CSS(cascading style sheet,层叠样式表)是一种制作网页的新技术,现在已经为大多数浏览器所支持,成为网页设计必不可少的工具之一 CSS语法 CSS实例 每 ...

  9. Delphi 正则表达式语法(8): 引用子表达式 - 也叫反向引用

    Delphi 正则表达式语法(8): 引用子表达式 - 也叫反向引用 //准备: 我们先写一个搜索所有英文单词的表达式 var   reg: TPerlRegEx; begin   reg := TP ...

  10. 解决Can't connect to local MySQL server through socket '/tmp/mysql.sock'

    0 Problem 电脑重启后用python的MySQLdb连接数据库报错 Can't connect to local MySQL server through socket '/tmp/mysql ...