Python新手入门(三):数据类型

北理mooc学习笔记

Python新手入门(三):数据类型

字符串

表示

 字符串两类共四种表示方式:

  • 由一对单引号或双引号表示
  • 一对三单引号或三双引号表示

字符串的使用:

  • 索引:返回字符串中的单个字符 <字符串>[M]
  • 切片:返回字符串中的一段字符子串 <字符串>[M:N]
    使用[M:N:K]根据步长对字符串切片
    (1)“12345678”[:3] 结果为 “123”
    (2)“12345678”[:-1] 结果为 “1234567”
    (3)“12345678”[1:8:2] 结果为 “1357”
    (4)“12345678”[::-1] 结果为 “87654321”
  • 转义符:
用法含义
\b回退
\n换行(光标移动到下行首)
\r回车(光标移动到本行首)
  • 另:‘这里有一个双引号(")’ 同 ‘‘这里有一个双引号(")’’

操作符

用法含义
x + y连接两个字符串x和y
n * x 或 x * n复制n次字符串x
x in s如果x是s的字串,返回Ture,否则返回False
weekStr = "星期一星期二星期三星期四星期五星期六星期日"
weekID = eval(input("请输入星期数字(1-7):"))
pos = (week - 1) * 3
print(weekStr[pos: pos+3])
weekStr = "一二三四五六日"
weekID = eval(input("请输入星期数字(1-7):"))
print("星期" + weekStr[weekID-1])

处理函数

函数及使用描述
len(x)返回字符串长度
len(“一二三456”) 结果为 6
str(x)任意类型x所对应的字符串形式
str(1.23) 结果为 "1.23"
str([1,2])结果为 “[1,2]”
hex(x) 或 oct(x)整数x的十六进制或八进制小写形式字符串
chr(u) 或 ord(x)将Unicode编码返回对应字符,反之

处理方法

函数及使用描述
str.lower 或 str.upper返回字符串的副本,全部字符小写/大写
str.split(sep=None)返回一个列表,由str根据sep被分割的部分组成
"A,B,C".split(",") 结果为 [‘A’,‘B’,‘C’]
str.count(sub)返回子串sub在str中出现的次数
str.replace(old,new)返回字符串副本,所有old子串被替换为new
str.center字符串str蜂聚宽度width居中,fillchar可选
str.strip(chars)从str中去掉左侧和右侧chars中列出的字符
str.join(iter)在iter变量除最后元素外每个元素增加一个str
",".join(“123”) 结果为 “1,2,3”

格式化

格式化是对字符串进行格式表达的方法

  • .format()方法,用法如下:
    <模板字符串>.format(<逗号分隔的参数>)
  • 槽机制(使用{ }表示,是一种占位信息符)
    在这里插入图片描述在这里插入图片描述
    在这里插入图片描述

集合

  • 集合元素之间无序,每个元素唯一
  • 集合元素不可更改,不是可变数据类型
  • 建立集合类型用 { } 或 set(),建立空集合类型必须用set()

操作符

操作符描述
S I T
S - T
S & T
S ^ T
S <= T 或 S <T返回True/False,判断S和T的子集关系
S >= T 或 S >T返回True/False,判断S和T的包含关系
更新集合S的操作符描述
S I= T
S -= T
S &= T
S ^= T

处理方法

操作函数或方法描述
S.add(x)如果x不在集合S中,将x增加到S
S.discard(x)移除S中元素x,如果x不在集合S中,不报错
S.remove(x)移除S中元素x,如果x不在集合S中,产生KeyError异常
S.clear(x)移除S中所有元素
S.pop(x)随机返回S的一个元素,更新S,若S为空产生KeyError异常
S.copy(x)返回集合S的一个副本
len(s)返回集合S的元素个数
set(x)将其他类型变量x转变为集合类型
x in S判断S中的元素x,x在集合S中,返回True,否则返回False
x not in S判断S中的元素x,x不在集合S中,返回True,否则返回False
# 元素遍历
A = {"p","y",123}

>>>A = {"P","y",123}
    for item in A:
        print(iyem,end="")
ans->p123y
>>A
{'p',123,'y'}

>>>try:
      while True:
          print(A.pop(),end="")
     except:
        pass
ans->p123y
>>set A
ans->set()
  

应用

  • 包含比较
  • 数据quchong
ls = ["p","p","y","y",123]
s = set(ls) # 利用集合无重复元素的特点
# {'p','y',123}
lt = list(s) # 将集合转换为列表
# ['p','y',123]

序列

  • 具有先后关系的一组元素
  • 是一维元素向量,元素类型可以不同
  • 是一个基类类型,衍生出:字符串、元组、列表类型
  • 元素间由序号引导,通过下标访问序列的特定元素
    在这里插入图片描述
  • 应用场景
    (1)数据表示
    (2)元素遍历
    (3)数据保护
ls = ["cat","dog","tiger",1024]
lt = tuple(ls)
>lt
ans->('cat','dog','tiger',1024)

操作符

操作符描述
x in s如果x是序列s的元素,返回True,否则返回False
x not in s如果x是序列s的元素,返回False,否则返回True
s + t连接两个序列s和t
s * n 或 n * s将序列s复制n次
s[i]索引,返回s中的第i个元素,i是序列的序号
s[i: j] 或 s[i: j: k]切片,返回序列s中第i到j以k为步长的元素子序列
len(s)返回序列s的长度
min(s) 或 max(s)返回序列s的最大/最小元素,s中元素需要可比较
s.count(x)返回序列s中出现x的总次数

元组

  • 是一种序列类型,一旦创建就不能修改
  • 使用小括号( ) 或者 tuple()创建,元素间用逗号分隔
  • 可以使用或不使用小括号
>>>creature = "cat","dog","tiger","human"
creature[::-1]
ans->('human','tiger','dog','cat')

>>>color = (0x001100,"bule",creature)
color[-1][2]
ans->'tiger'

列表

  • 列表是一种序列类型,创建后可以随意被修改
  • 使用方括号 [ ] 或 list() 创造,元素间用逗号分隔
  • 方框号 [ ] 真正创建一个列表,赋值仅传递引用
  • 列表中各元素类型可以不同,无长度限制
  • 操作符
函数或方法描述
ls[i] = x替换列表ls第i元素为x
ls[i: j: k] = lt用列表lt替换ls切片后对应元素子列表
del ls[i]删除列表ls中的第i元素
del ls[i: j: k]删除列表ls中第i到第j以k为步长的元素
ls += lt更新列表ls1,将列表lt元素增加到列表ls中
ls *= n更新列表ls,其元素重复n次
函数或方法描述
ls.append(x)在列表ls最后增加一个元素
ls.clear()删除列表ls中所有元素
ls.copy()生成一个新列表,赋值ls中所有元素
ls.insert(i,x)在列表ls的第i位置增加元素x
ls.pop(i)将列表ls中第i位置元素取出并删除该元素
ls.remove(x)将列表ls中出现的第一个元素x删除

字典

  • 映射是一种 键(索引) 和 值(数据) 的对应
  • 字典是映射的表达
  • 字典是键值对的集合,键值对之间无序
  • 采用大括号 { } 和 dict() 创建,键值对用冒号表示
>>>d = {'中国':'北京''美国':'华盛顿'}
d["中国"]
ans->'北京'

>>>de = {};type(de) # type(x)返回变量x的类型
ans-><class 'dict'>
  • 操作符
函数或方法描述
del d[k]删除字典d中键k对应的数据值
k in d判断键k是否在字典d中,如果在返回Ture,否则返回False
d.keys()返回字典d中所有的键信息
d.values()返回字典d中所有的值信息
d.items()返回字典d中所有的键值对信息
d = {"中国":"北京","美国":"华盛顿"}
d.keys()
ans->dict_keys(['中国''美国'])
 # 可以遍历,但不能当作列表类型操作
函数或方法描述
d.get(k,< default >)键k存在,则返回相应值,不在则返回< default >
d.pop(k,< default >)键k存在,则取出相应值,不在则返回< default >
d.popitem()随机从字典d中取出一个键值对,以元组形式返回
d.clear()删除所有的键值对
len(d)返回字典d中元素的个数
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值