python —— 数据结构(字符串,元组,列表,字典,集合)


Python 标识符

1、标识符由字母、数字、下划线组成。

2、所有标识符可以包括英文、数字以及下划线(_),但不能以数字开头。

3、标识符是区分大小写的。

4、以单下划线开头 _foo 的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx import * 而导入;

5、以双下划线开头的 __foo 代表类的私有成员;

6、以双下划线开头和结尾的_ _ foo__ 代表 Python 里特殊方法专用的标识,
如 _ _ init __() 代表类的构造函数。


Python 引号

Python 可以使用引号( ’ )、双引号( ” )、三引号( ”’ 或 “”” ) 来表示字符串,引号的开始与结束必须的相同类型的。

其中三引号可以由多行组成,编写多行文本的快捷语法,常用于文档字符串

word = 'word'
sentence = "这是一个句子。"
paragraph = """这是一个段落。
包含了多个语句"""

print 默认输出是换行的,如果要实现不换行需要在变量末尾加上逗号 ,

input 输入

name = input('please enter your name: ')
print('hello,', name)

字符串 String

1、字符串类型是不可变的,所以要改变一个字符串就必须通过创建一个新串的方法来实现。

2、不能只改变一个字符串的一个字符或者一个子串,然而,通过拼凑一个旧串的各个部分来得到一个新串是被允许的

unicode字符串操作符u/U

  1. unicode字符串以u开头,在计算机内存中,统一使用Unicode编码

  2. 一个字符对应若干个字节。

bytes字符串操作符b/B

  1. bytes字符串以b开头,可用来在网络上传输,或者保存到磁盘上

  2. 每个字符都只占用一个字节。即utf-8,可变长编码,节省空间。

原始字符串操作符r/R

  1. 原始字符串以r开头,使用原始字符串可以避免字符串中转义字符带来的问题

  2. 举例
    打开readme.txt时出现异常,就是因为’\r’和’\t’被当成不在我们的文件名中的特殊字符。

>>> f = open("D:\windows\temp\readme.txt",'r')
IOError: [Errno 22] ...
# 所以应在文件路径前加上字母‘r’,使用原始字符串
>>> f = open(r"D:\windows\temp\readme.txt",'r')
>>> f.readline()
'Hello World!'
>>> f.close()

元组 tuple

1、有序的对象集合

2、元组元素用小括号()包裹,元素的个数及元素的值不可改变,相当于只读列表。

3、可通过元组下标访问元素

4、只有1个元素的tuple定义时必须加一个逗号,,来消除歧义

基本操作

创建元组

>>> tup = ('physics', 'chemistry', 1997, 2000);

访问元组

>>> tup[0] 
physics
>>> tup[1:4]
physics, chemistry, 1997

元组的连接组合

>>> tup1 = (12, 34.56);
>>> tup2 = ('abc', 'xyz');
>>> tup3 = tup1 + tup2;
>>> print tup3;
(12, 34.56, 'abc', 'xyz')

列表 List

1、有序的对象集合

2、列表元素用中括号[ ]包裹,元素的个数及元素的值可以改变。

3、可通过列表下标访问元素

基本操作

创建list

>>> classmates = ['Michael', 'Bob', 'Tracy']
>>> classmates
['Michael', 'Bob', 'Tracy']

访问list

>>> classmates[0] 
Michael
>>> classmates[1:3]
Michael, Bob

追加元素到list末尾,用append()方法

>>> classmates.append('Adam')
>>> classmates
['Michael', 'Bob', 'Tracy', 'Adam']

把元素插入到指定的位置,用insert()方法

>>> classmates.insert(1, 'Jack')
>>> classmates
['Michael', 'Jack', 'Bob', 'Tracy', 'Adam']

删除list末尾的元素,用pop()方法

>>> classmates.pop()
'Adam'
>>> classmates
['Michael', 'Jack', 'Bob', 'Tracy']

删除指定位置的元素,用pop(i)方法

>>> classmates.pop(1)
'Jack'
>>> classmates
['Michael', 'Bob', 'Tracy']

要把某个元素替换成别的元素,可以直接赋值给对应的索引位置

>>> classmates[1] = 'Sarah'
>>> classmates
['Michael', 'Sarah', 'Tracy']

字典 Dict

1、无序的对象集合

2、字典是映射数据类型,由键-值对构成,字典元素用大括号{ }包裹

3、不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住

4、键必须不可变,所以可以用数字,字符串或元组充当,列表就不行

5、可通过键访问元素

基本操作

创建dict

>>> dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};

访问dict

>>> dict['Name']
Zara

增加新的键/值对

>>> dict['School'] = "DPS School"
>>> dict['School']
DPS School

集合 Set

1、无序且不重复的对象集合

2、重复元素在set中自动被过滤

3、不可以访问特定的元素

基本操作

创建set(要创建一个set,需要提供一个list作为输入集合)

>>> s = set([1, 1, 2, 2, 3, 3])
>>> s
{1, 2, 3}

增加元素到set

>>> s.add(4)
>>> s
{1, 2, 3, 4}

删除元素

>>> s.remove(4)
>>> s
{1, 2, 3}

使用set取并集和交集

>>> s1 = set([1, 2, 3])
>>> s2 = set([2, 3, 4])
>>> s1 & s2
{2, 3}
>>> s1 | s2
{1, 2, 3, 4}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值