[再学Python] - 1 - 数据类型

数据类型

类型是编程语言对数据的一种划分
Python的数据类型

  • 数字类型
  • 字符串类型
  • 元组类型
  • 列表类型
  • 文件类型
  • 字典类型

数字类型

  • 整数类型
  • 浮点数类型
  • 复数类型
整数类型

与数学中的整数的概念一致,但是没有取值范围的限制
pow(x,y)表示计算 xypow(x,y)可嵌套使用

浮点数类型

带有小数点及小数的数字,数值范围存在限制,与计算机系统有关
在Python的IDE中,输入以下代码,能看到浮点数的信息

>>>import sys
>>>sys.float_info

结果如下:

# sys.float_info(max=1.7976931348623157e+308, max_exp=1024, max_10_exp=308, min=2.2250738585072014e-308, min_exp=-1021, min_10_exp=-307, dig=15, mant_dig=53, epsilon=2.220446049250313e-16, radix=2, rounds=1)

可以看到数据范围为[10308, -10308],精度到小数点后53位。对于绝绝绝大多数情况都不会出现问题。
所以一般也可以认为浮点数是没有限制的。

浮点数可以用科学记数法表示(eE),为<a>e<b>=a*10^b

复数类型

虚部用jJ表示,z=a+bj
z.real获得实数部分,z.imag获得虚数部分。

数字类型之间的关系

三种类型为扩展关系:整数 -> 浮点数 -> 复数。
不同数字类型之间可以混合运算,结果类型为最宽类型

数字类型转换的函数

  • int():转换为整数
  • float():转换为浮点数
  • complex():转换为复数

float转换为int时,小数部分会直接去掉。
次宽类型向更宽类型转换时,新加的部分的值为0
不允许从complex直接向floatint转换,转换由z.realz.imag实现

数字类型的判断

type(x),返回x的数据类型(不仅限于数字类型)
在这里插入图片描述

字符串类型

用双引号“”或单引号‘’括起来的一个或多个字符
字符串可以保存在变量中,也可以单独存在
输出特定的字符,要用到转义符\

字符串索引

字符串是一个字符序列:字符串开始的索引为0,往后依次增加到L-1。同时允许反向索引,最右侧索引为-1

可以通过索引来访问字符串中的特定位置
也可以通过两个索引值来确定一个位置范围,返回该范围内的子串。<string>[<start>:<end>]start开始,到end-1结束。

>>>greet='Hello John'
>>>print(greet[2])
l
>>>x=8
>>>print(greet[x-2])
J
>>>greet[0:3]
'Hel'
字符串连接

字符串可以通过+*进行连接

  • 加法操作(+):将两个字符串连接为一个新的字符串
>>>"pine"+"apple"
'pineapple'
  • 乘法操作(*):字符串本身重复连接
>>>3 * "pine"
pinepinepine
字符串长度

len()来返回字符串长度

转为字符串str类型

str()函数:可以将大多数数据类型转为string类型
在这里插入图片描述

遍历字符串

for <var> in <string>

元组类型

元组是包含多个元素的类型,元素之间用逗号分隔

元组特点
  • 元组中元素可以是不同类型
  • 可以通过索引(索引区间)来访问元组中的元素(们)
  • 元组定义后不能更改不能删除
  • 可以通过+*进行运算

元组定义后不能更改,说明使用元组会更安全。如果要求灵活,可以列表类型来代替元组类型。

列表类型

列表list是有序的元素集合。

列表特点
  • 元素可以为不同类型
  • 通过索引访问元素
  • 列表可以修改
列表操作

在这里插入图片描述
在这里插入图片描述
字符串可以通过split()函数,来拆分成一个列表

>>>"python is an excellent language".split()
['python', 'is', 'an', 'excellent', 'language']

字典类型

字典的基础

字典类型是Python特有的高级数据结构,是针对非序列集合而提供的一种数据结构。

字典是一个键值对的集合,该集合以为索引。
在这里插入图片描述
字典类型与序列类型的区别:

  • 存取和访问的方式
  • 键的类型:
    序列类型只能由数字作为键;字典类型可以用其他对象做为键(数字、字符串、元组等)
  • 排列方式:
    序列保持元素间的顺序;字典是无序排列。
  • 映射值的方式
    序列类型通过地址映射到值;字典的键直接映射到值。
字典的操作

语法:

# 字典的定义
dictionaryName["key"] = "value"
dictionaryName = {"key1": "value1", "key2", "value2" }

# 字典的访问:通过键来访问
dictionaryName["key"]

# 删除字典的某一项
del dictionaryName["key"]

# 字典的遍历
# 遍历字典的键key
for key in dictionaryName.keys():
	print(key)
# 遍历字典的值value
for value in dictionaryName.values():
	print(value)
# 遍历字典的项
for item in dictionaryName.items():
	print(item)
# 遍历字典的键值对
for item,value in adict.items():
	print(item, value)

# 判断键是否在字典中: in, not in. 返回值为布尔类型
"key" in dictionaryName

字典的标准操作符:
-, <, >, <=, >=, ==, !=, and, or, not
在这里插入图片描述
字典的函数:
在这里插入图片描述
字典的操作示例:
在这里插入图片描述

字典的应用

应用1:统计词频
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
.strip()去掉开头结尾的空格,.lower()将大写字符变为小写。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
应用2:号码簿
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值