zl程序教程

您现在的位置是:首页 >  Python

当前栏目

Python基本数据类型 与 组合数据类型(涵盖大部分常用内置函数)

2023-04-18 14:58:00 时间

Python的基本数据类型

注意:以下代码均在 Python 3.7.1 环境下测试通过

一、基本数据类型

(1) 数值类型

1.1 整形 int

Python 整数的关键字:int

int 类型使用场景

a = 1 # 声明一个 int 类型的变量
print(type(a)) # 

# 整数运算
print(1+1) 
# 2

# 强制类型转换
x = int(input()) # 输入 1
print(type(x)) 
# 

1.2 浮点类型 float

Python 浮点数的关键字:float

a = 1.5
print(type(1.5)) 
# 

print(1+1.5)
# 2.5

print(1.5+1.5)
# 3.0

# 强制转换
x = float(input()) # 输入 2
print(x) 
# 输出 2.0

在其他编程语言中,例如C 语言,Java float是属于单精度的数据类型,为了表示精度更高的数据,会有 double 数据类型。但是 Python 中表示浮点数只有 float 类型

1.3 complex 复数

Python中使用 复数会用到关键词 j

# 复数的创建
a = 1 + 2j # 1为实部,2位虚部
print(a.conjugate(),a.real,a.imag,sep=" ")
# result: (1-2j) 1.0 2.0

(2) 字符串类型

以下的测试中,s字符串均为 'hello world'

2.1 字符串基本使用

a = 's'
b = "s"
c = '''s'''

print(a,b,c,sep=' ')
# s s s

x = input() #输入默认的就是字符串类型
print(type(x))
# 

2.2 字符串的切片

切片从数组下标 0 开始

s = 'Hello World'
# s[切片的起始位置:切片的终止位置:步长(会跳跃几个元素)]
print(s[0]) #H
print(s[0:1]) #H 从第一个元素开始截取,截止到第二个元素
print(s[0:2]) #He 从第一个元素开始截取,截止到第三个元素,但是不包括第三个元素
print(s[1:5],s[1:6],sep=" ")

print(s[-1]) #倒着截取 d
print(s[-8:-4]) #打印 lo W

# 逆序输出一串字符
print(s[::-1]) #dlroW olleH

2.3 字符串拼接

以下使用的常用方法,都是博主我遇到过的,所以拿出来整理整理

2.3.1 最常见的字符串拼接 ‘+’

s = 'Hello World'
s1 = s + '2'  # 注意:字符串只能拼接字符串
print(s1)
# Hello World2

2.3.2 字符串拼接竟然还可以使用 * (乘法运算符)

s = 'hello world'
s2 = s*2 # 字符串可以使用乘号变长
print(s2)
# Hello WorldHello World

2.3.3 字符串拼接 join 函数

s = 'hello world'
s3 = s.join("t") # 使用 join 函数拼接
s3_1 = s.join("@@")
s3_2 = s.join("@@@")
print(s3,s3_1,s3_2)
# t @Hello World@ @Hello World@Hello World@  字符串之间以我们 join 中的字符进行拼接

2.4 字符串统计

2.4.1 还能统计单个字符出现的次数 (count)

s = 'hello world'
s4 = s.count('l') # 统计字符出现的次数
print(s4) # l 出现了三次

2.4.2 竟然还能查找到单个字符第一次出现的位置 (index)

s = 'hello world'
s5 = s.index('l') #查找该字符第一次出现的位置 (下标形式存在)
print(s5)

2.5 字符串处理

2.5.1 切割字符串 (split)

s = 'hello world'
s6 = s.split(" ") # 以空格分离字符串,返回一个列表
print(s6) # 得到 ['Hello', 'World']

2.5.2 字符串处理 (strip)

new_s = 'hello world@' # 常常用来清理换行符
s7 = new_s.strip("@") # 去掉字符串两边多余元素 ,还有 rstrip() lstrip() r代表 right,l 代表left
print(s7) #hello world

2.5.3 字符串替换 (replace)

s = 'hello world'
s8 = s.replace("Hello","haha") # 字符串替换
print(s8) #haha World

2.5.4 文章首字母大写(title,capitalize)

new_s2 = 'hello World, I like coding !!!'
s13 = new_s2.capitalize()
print(s13) # 将一行字符串中元素第一个字母的的第一个字符大写,其他的首字母小写
# Hello world, i like coding !!!

new_s1 = 'hello world'
s9 = new_s1.title() # 把一串字符串中的单词中的首个字母大写
print(s9)
Hello World

2.5.5 字符串所有单词首字母的变换 (upper,lower)

s10 = s.upper() # 所有字母大写
print(s10) #HELLO WORLD
# HELLO WORLD
s11 = s.lower() # 所有字母小写
print(s11)
#hello world 

2.5.6 找子串 (find)

s12 = s.find("ello") # 查找子串的位置
print(s12) # 返回第一个元素出现的位置

2.5.7 找子串 (in)

s = 'Hello World'
print('llo' in s)
# 返回 bool 类型 True,说明 llo 是 Hello World 的子串

相对的还有 not in 等等

2.5.7 判断单个字符类型 (isXXXX)

这种是判断单个字符数据类型的方法,剩下的就不再一一赘述了

2.6 转义字符

打印一下正常手段无法打印的字符

print("换行符:
","打印一个斜杠:\","制表符:	",end="@")
# 换行符:
# 打印一个斜杠: 制表符:	@
  1. ‘ 单引号
  2. 回车

(3)bool 数据类型

布尔类型代表两种状态,只有真和假

3.1 布尔真 True

3.1.1 整数也能代表真假(一)

a = True
c = 1
print(c == True)
# True  除了0 以外的都是 真

3.2 布尔假 False

3.2.1 整数也能代表真假(二)

b = False
d = 0
print(d == False)
# True  和上面相对应 ,0就代表 False

3.3 布尔相关关键字 (in)

找子串

s = 'Hello World'
print('llo' in s) #True
print(' We' not in s) #True

3.4 布尔相关关键字 (is)

e  = '111'
f = '111'

print(e == f) #True  == 比较数值
print(e is f) #True is 比较地址

(4)组合数据类型(容器数据类型)

具体的关于组合数据类型,会在后面的内容着重介绍,这个只是稍微的带一下

4.1 列表 list

数据类型

# 创建列表
a = [1,2,3]
print(a)
# [1,2,3]

# 使用 range 函数创建列表
x = list(range(10)))
print(x)
# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

# 推导式创建列表
x = [x for i in range(10)]
print(x)
# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

# 创建空列表
x = []

# 创建一个混合列表
x = [1,'aa',[2,3,4],5.5]

想看更多列表的使用,查看这篇文章 列表的基本使用

4.2 元组 tuple

元组的特点在于不可变性,元组一旦确定之后,里面的元素就无法修改和操作

数据类型

a = (1,2,3)
print(1,2,3)
#(1,2,3)

更多元组学习内容~添加链接描述

4.3 字典 dict

字典的结构类似于 JSON,但它不是 JSON ,它是 Python 中一种特殊的数据结构,它以 key — value 进行配对

数据类型

a = {"1":1,"2":2}
print(a)
# {'1': 1, '2': 2}

字典操作学习

4.4 集合 set

数据类型 集合表示(set)

eg:

a = {1,1,2,3,4,4}
print(a)
# {1,2,3,4}

a = {1,2,3,4}
b = {3,4,5,6}
print("差集:{} 交集:{} 并集:{}".format(a - b,a & b,a | b,)) # 差集