Python学习笔记3_数据类型
Python数据类型:数字、字符串、列表、元祖、字典
一、数字类型:(整型、长整型、浮点型、复数型)
1、整型(int):表示范围-2,147,483,648到2,147,483,647
2、长整型(long):long的范围很大,几乎可以说任意大的整数均可以存储;123l、123L
为了区分普通整数和长整数,需要在整数后加L或者小写l
3、浮点型(float):0.0、12.0、-18.8、3e+7等
4、复数型(complex):python对复数提供内嵌支持,这是其他大部分软件所没有的;如:3.14j
二、字符串(string)
使用引号定义的一组可以包含数字,字母,符号(非特殊系统符号)的集合。
“张三”‘张三’单引号和双引号没有任何区别
三重引号(docstring)通常用来制作字符串
a=”abcde”:字符串的操作:1、a[0]= 'a'、a[0]+a[1]= 'ab';2、a[1:4]= 'bcd';3、a[::2]= 'ace'两步取一个。
三、元祖()
元祖和列别十分相似,只不过元祖和字符串一样是不可变的即你不能修改元祖
-元祖通过圆括号中用逗号分割的项目定义
-元祖通常用在使语句或用户定义的函数能够安全地采用一组值的时候,即被使用的元祖的值不会改变。
创建元祖
-一个空的元祖由一对空的圆括号组成
如demo=()
-含有单个元素的元祖
如single=(name,)
-一般的元祖
如test=('fansik', 'good', 'penguin')
如a,b,c=('fansik', 'good', 'penguin')
元祖操作
-元祖和字符串类型一样属于序列类型,可通过索引和切片操作
-元祖值亦不可变
四、序列-列表[]
l list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目。
l 列表是可变类型的数据
l 列表的组成:用[]表示列表,包含了多个以逗号分隔开的数字,或者字符串。
-list1=['fansik', 'maomao', 'wang', '张三']
-list2=[1,2,3,4,5,6]
-list3=[“str1”, “str2”, “str3”, “str4”, “str5”]
列表操作
-取值
切片或索引
list[]
-添加
list.append()
-删除
del(list[])
list.remove(list[])
-修改
list[]=x
-查找
var in list
五、序列的基本操作(字符串、元祖、列表)
1、len() 求序列长度
2、+ 连接两个序列
3、* 重复序列元素
4、in 判断元素是否在序列中
5、max() 返回最大的值
6、min() 返回最小的值
7、cmp(demo1,demo2) 比较2个的序列值是否相同
六、字典{}
l 字典是python中唯一的映射类型(哈希表)
l 字典对象是可变的,但是字典的键必须使用不可变对象,以使用不同类型的键值
l keys()或者values()返回键列表或者值列表
l items()返回包含键值对的元祖
创建字典
1、使用工厂方法dict()
例:fdict=dict(['x',1],[ 'y',2])
dic={'name':'fanjinbao','age':28,'gender':'male'}
2、内建方法:fromkeys(),字典中的元素具有相同的值,默认为none
例:ddict={}.fromkeys(('x','y'),-1)
访问字典中的值:
1、直接使用key访问:key不存在会报错,可以使用had_key()或者in和not in判断,但是has_key()方法即将废弃。
2、循环遍历
例:for key in dict1.keys()
3、使用迭代器:for key in dict1:
更新和删除
1、直接用键值访问更新:内建的update()方法可以将整个字典的内容拷贝到另一字典中
2、del dic['a']删除字典中键值为a的元素
-dic.pop('a')删除并且返回键为'a'的元素
-dic.clear()删除字典所有元素
-del dic删除这个字典
字典相关的内建函数:type()、str()、cmp()(cmp很少用于字典的比较,比较依次是字典的大小、键、值)
工厂函数dict()
例:1、dict(zip('x', 'y'),(1,2))或者dict(x=1,y=2)
2、{'y':2,'x':1}
3、使用字典生成字典比用copy慢,因此这种情况下推荐是用copy()
附上字典函数:
1、len(),hash()(用于判断某个对象是否可以做一个字典的键,非哈希类型报TypeError错误)
2、dict.clear():删除字典中所有元素
3、dict.fromkeys(seq,val=None):以seq中的元素为键创建并返回一个字典,val为指定的默认值
4、dict.get(key,default=none):返回key的value,如果该键不存在返回default指定的值
5、dict.has_key(key):判断字典中是否存在key,建议使用in和not in代替
6、dict.items():返回键值对元祖的列表
7、dict.keys():返回字典中键的列表
8、dict.iter*():itertems(),iterkeys(),itervalues()返回迭代子而不是列表
9、dict.pop(key[,default]):同get(),区别是若key存在,删除并返回dict[key],若不存在且default未指定值,抛出keyError异常。
10、dict.setdefault(key,default=None):同set(),若key存在则返回其value,若key不存在,则dict[key]=defaule.
11、dict.update(dict2):将dict2中的键值对添加到字典dict中,如果重复则覆盖,不重复则添加
12、dict.values():返回字典中所有值的列表。
Python学习笔记3_数据类型的更多相关文章
- Python学习笔记 - day3 - 数据类型及运算符
Python的数据类型 计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值.但是,计算机能处理的远不止数值,还可以处理文本.图形.音频.视频.网页等各种各样的数据,不同 ...
- python学习笔记二 数据类型(基础篇)
Python基础 对于Python,一切事物都是对象,对象基于类创建 不同类型的类可以创造出字符串,数字,列表这样的对象,比如"koka".24.['北京', '上 ...
- python学习笔记3_抽象
这一步的学习四个知识点,如何将语句组织成函数,参数,作用域(scope),和递归 一.函数 1.抽象和结构 抽象可以节省很多的工作量,实际上它的作用更大,它是使得计算机程序让人读懂的关键(这也是最基本 ...
- Python学习笔记---数 数据类型 运算
python的四种数类型: 整数 int 浮点型 float 布尔 boolen 复数 complex >>> type(5)<class 'int'>>>& ...
- 02 Python学习笔记-基本数据类型(二)
一.基本知识 1.缩进: 2.一行多条语句: 3.断行: 4.注释 # 单行注释 '''这是一段 多行注释''' 5. 变量 1. 变量类型(局部变量.全局变量.系统变量) 2. 变量赋值 多重赋值x ...
- python学习笔记(数据类型)
python数据类型: int 类型 float 小数类型 string 字符串 布尔类型 a = True b = False 1.列表,也称数组或list或array.它的表达方式通过下标或索引或 ...
- python学习笔记:数据类型——列表/数组(list)
Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素.通过下标访问列表中的元素(又称索引.角标),下标从0开始计数.list定义,使用中括号[]. l ...
- python学习笔记:数据类型——数字、字符串、元祖、字典
计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值.但是,计算机能处理的远不止数值,还可以处理文本.图形.音频.视频.网页等各种各样的数据,不同的数据,需要定义不同的数 ...
- python学习笔记之数据类型(二)
上一篇博客,小波介绍了python的入门和简单流程控制,这次写python的数据类型和各种数据类型的内置方法. 一.数据类型是何方神圣? 计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当 ...
随机推荐
- unity, 对于Debug.Log输出的log,可以双击定位到代码
unity, 对于Debug.Log输出的log,可以双击定位到代码
- Atitit.编程语言原理---方法重载的实现与设计 调用方法的原理
Atitit.编程语言原理---方法重载的实现与设计 调用方法的原理 1. 重载包括:普通方法的重载和构造方法的重载 1 1.1. 横向重载”和“纵向重载”1 1.2. 方法签名通过 方法名称,参数 ...
- NHibernate Transformers.AliasToEntityMap 返回Hashtable
string query = "select a.CustomerName as CustomerName, b.ProductName as ProductName from Custom ...
- 李洪强漫谈iOS开发[C语言-003]-开发概述程序设计语言
李洪强iOS开发之程序设计语言 printf 是打印的意思- 格式化输出 f: format 格式化 C语言编译器 编译器的功能就是将高级语言的源代码,翻译成机器可以识别的二进制文件就是可执 行文件- ...
- Spring Boot全日志设置
说在前面 这里日志分两种.一种是tomcat的输出(系统)日志,一种是自己定义的日志. 系统日志设置 目标 当springboot接收到请求时记录日志到文件中 实现 你只需要在你的绿叶applicat ...
- 敏捷开发 scrum管理
项目准备阶段 1.产品经理将整体项目拆分成不同的单独模块,每个模块尽量细化到能够自成一体.例如app的登录注册模块,不能仅仅就是登录注册这两个界面,而是要将所有与这有关的需求整合到一块.要达到的效果就 ...
- 配置HADOOP_HOME
配置HADOOP_HOME export HADOOP_HOME=/usr/hadoop-1.2.0export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sb ...
- linux用户密码生成
linux账户保存在/etc/passwd,密码保存在/etc/shadow. 通过man 5 passwd,man 5 shadow可查看文件中各字段含义. encrypted password ...
- Spring MVC多动作控制器
以下示例演示如何使用Spring Web MVC框架的多动作控制器. MultiActionController类用于在单个控制器中分别映射多个URL到对应的方法. 所下所示配置 - package ...
- Fedora13下编译busybox-1.15.0出现can not find lcrypt错误
在Fedora 13 系统上编译busybox(非交叉编译)产生错误 root@localhost # make ... gcc -Wall -Wshadow -Wwrite-strings -Wun ...