第二部分 数据结构 第2章 序列构成的数组 内置序列类型 序列类型 序列 特点 容器序列 list.tuple.collections.deque - 能存放不同类型的数据:- 存放的是任意类型的对象的引用 扁平序列 str.bytes.bytearray.memoryview.array.array - 只能容纳一种类型:- 存放的是数据值:- 是一段连续的内存空间:- 只能存放字符.字节.数值等基础类型 可变序列与不可变序列 可变序列:list.bytearray.array.array.c…
Python算法与数据结构--求所有子数组的和的最大值 玄魂工作室-玄魂 玄魂工作室秘书 玄魂工作室 昨天 题目:输入一个整形数组,数组里有正数也有负数.数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和. 求所有子数组的和的最大值.要求时间复杂度为O(n). 这个题目有多个解法,比如可以用一个二维数组存之前每个数据的和,然后在进行大小比较:但是这样时间负责度就是O(n2)了. 换个思路思考下,因为是要最大数,那么就不需要存储,只需要找最大值就可以了.但是为了找子序列的最大和,在遇到…
文本和字节序列 人使用文本,计算机使用字节序列 1. 大纲: 字符.码位和字节表述 bytes.bytearray和memoryview等二进制序列的独特特性 全部Unicode和陈旧字符集的编解码器 避免和处理编码错误 处理文本文件的最佳实践 默认编码的陷阱和标准I/O的问题 规范化Unicode文本,进行安全的比较 规范化.大小写折叠和暴力移除音调符号的实用函数 使用locale模块和PyUCA库正确地排序Unicode文本 Unicode数据库中的字符元数据 能处理字符串和字节序列的双模式…
字符问题 把码位转化成字节序列的过程是编码,把字节序列转化成码位的过程是解码 把unicode字符串当成人类可读的文本,码位当成机器可读的, 将字节序列编程人类可读是解码,把字符串编码成字节序列是编码 字节概要 python内置了两种基本的二进制序列类型,python3引入的不可变的bytes类型和python2.6添加的可变bytearray类型 基本的编解码器 别依赖默认值 python2的默认编码是ascii而python3是utf-8 这章内容主要讨论unicode编码,其实觉得没什么很…
本篇内容 字符串操作 列表,元组操作 字典操作 集合操作 文件操作 其他 1.字符串操作 1.1 字符串定义 特性:不可修改 字符串是 Python 中最常用的数据类型.我们可以使用引号('或")来创建字符串. 创建字符串很简单,只要为变量分配一个值即可.例如: name = "40kuaiqianzhuawawa" name = '40kuaiqianzhuawawa' 1.2 python转义字符 在需要在字符中使用特殊字符时,python用反斜杠(\)转义字符.如下表:…
本文主要内容 字符 字节 结构体和内存视图 字符和字节之间的转换——编解码器 BOM鬼符  标准化Unicode字符串 Unicode文本排序 python高级——目录 文中代码均放在github上:https://github.com/ampeeg/cnblogs/tree/master/python高级 字符 ''' 字符编码问题是经常困扰python编程人员的问题,我在编写爬虫的过程中也经常遇到这个头疼的事. 从python3开始,明确区分了人类语言(文本字符串)和机器语言(二进制字节),…
转载请注明出处:http://blog.csdn.net/wklken/archive/2011/04/10/6312888.aspx Python基本数据结构:列表,元组及字典 一.列表 一组有序项目的集合.可变的数据类型[可进行增删改查] 列表是以方括号"[]"包围的数据集合,不同成员以","分隔. 列表中可以包含任何数据类型,也可包含另一个列表 列表可通过序号访问其中成员 常用列表操作: list.append()追加成员,成员数据 list.pop()删除成…
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 15.0px Helvetica } Python 3 明确区分了人类可读的文本字符串和原始的字节序列.隐式地把字节序列转换成 Unicode 文本已成过去. 深入理解 Unicode 对你可能十分重要,也可能无关紧要,这取决于Python 编程的场景.说到底,本章涵盖的问题对只处理 ASCII 文本的程序员没有影响.但是即便如此,也不能避而不谈字符串和字节序列的区别.此外,你会发现专门的二进制序列类型所…
一.字符串的表示和存储 字符串是字符的序列,每个字符都有有一个数字作为标识,同时会有一个将标识转换为存储字节的编码方案: s = 'hello world python' for c in s: print(c, end=' ') h e l l o w o r l d p y t h o n ACSII为协议内的每个字符分别对应一个数字,然后以这个数字的二进制形式存储到计算机; s = 'hello world python' for c in s: num = ord(c) print(nu…
笔记: 1.字典是Python中唯一的映射类型 2.字典包含两个要素:键(key)和值(value)他们是成对出现的,用大括号括起来,多对存在时用逗号隔开. 3.可以用dict()直接创建字典,如dict1 = dict((('F',70),('i',105),('s',115),('h',104),('C',67))),创建出来的字典dict1的形式为{('F',70),('i',105),('s',115),('h',104),('C',67)} 4.dict2 = dict(key1 =…