首页 > 编程语言 >python数据类型

python数据类型

时间:2024-07-13 11:30:56浏览次数:9  
标签:xk None python 数据类型 s5 d6 print type

1.Int

整数:int 可以表示正数、负数、零,主要用来进行数学运算。对于整数还可以进行位运算,共有6种位运算:取反(~)、左移(<>)、异或(^)、按位或(|)、按位与(&)。

 int()数据类型能够转换成整数(文字、小数类字符串不能,浮点数转换直接抹零取整)。

整数的进制:

二进制表示形式:0b1101  (0,1)

八进制表示形式:0o15457  (0-7)

十六进制表示形式:0x45758329  (0-9,A,B,C,D,E,F)

int("字符串",进制),将指定进制的字符串转为十进制

bin(十进制),返回十进制对应的二进制,0b开头二进制

oct(十进制),返回十进制对应的八进制,0o开头八进制

hex(十进制),返回十进制对应的十六进制,0x开头十六进制

a = 10
print(a, type(a))

# 二进制
a = 0b0
a = 0b10
a = 0b100
a = 0b101010
a = 0b1111
print(a, type(a))

a = 88
a = 99
a = 20
print(bin(a))

# 十六进制
a = 0xa4
a = 0xb6
print(a, type(a))

a = 520
a = 666
print(hex(a))

# 八进制
a = 0o135
a = 0o333
print(a, type(a))

a = 45
a = 99
print(oct(a))

print(int('10', 8))

 

2.Float

浮点数:float,小数点表示,科学计数法。浮点数是有整数部分和小数部分组成,浮点数也称为小数。在进行浮点数进行计算时,可能会出现小数位数。不确定的情况(整数运算永远是最精确的,而浮点数运算则可能会有四舍五入的误差),​​​​浮点数写法:1.23,-9.12,1.26x10^5,12.3e5。

3.Bool

布尔值:bool(True或False)布尔值只有True和False两个值,分别映射为整数1和0。

b=False;b=bool(True)。

布尔类型可以通过布尔表达式取值,布尔比较运算符有6种:小于()、大于等于(>=)、等于(==)、不等于(!=)。

对于布尔类型还可以进行逻辑运算,有3种运算:逻辑非(not)、逻辑非或(or)、逻辑与(and)。

布尔类型在编程中的应用场景:

条件判断:布尔类型常用于条件语句中,根据条件的真假执行相应的代码块。条件判断用法参考:Python中的条件语句

循环控制:布尔类型常用于循环语句中,根据条件的真假控制循环的执行和退出。循环语句用法参考:Python循环语句介绍

数据过滤:通过布尔类型可以筛选和过滤数据,只选择满足条件的数据进行处理。

状态标记:布尔类型可以用来表示某种状态,比如程序运行状态、开关状态等。

4.Str

字符串:str,双引号、单引号,单引号、双引号必须交叉使用,三引号,特殊注释。

字符串是可迭代Iterable,for c in "str",单纯拿到每一个字符。

在Python中,字符串可以像列表一样进行遍历。可以使用for循环来遍历字符串中的每一个字符。

字符串常见操作:

# 从左 szd 排第几  无报错
print("xkszdbszdwsjd".index("szd"))
# 从右 szd 排第几  无报错
print("xkszdbszdwsjd".rindex("szd"))
# 从左 szd 排第几  无报-1(查找子串,并返回第一个匹配的位置,找不到返回-1)
print("xkszdbszdwsjd".find("szd0"))
# 从右 szd 排第几  无报-1
print("xkszdbszdwsjd".rfind("szd0"))
# 从左 szd 出现次数
print("xkszdbszdwsjd".count("szd0"))
# 首字母大写
print("xkszd bszdwsjd".capitalize())
# 小写转大写
print("XKszd bszdwsjd".upper())
# 大写转小写
print("XKszd bszdwsjd".lower())
# 大小写转换
print("XKszd bszdwsjd".swapcase())
# 单词首字母大写,其他小写
print("XKszd bszdwsjd".title())
# 长为20的字符串xk左右由&填补
print("xk".center(20, "&"))
# 长为20的字符串xk为首右边由&填补
print("xk".ljust(20, "&"))
# 长为20的字符串xk为首左边由&填补
print("xk".rjust(20, "&"))
# 长为20的字符串xk为首左边由0填补
print("xk".zfill(20))

# 使用[start:end]进行切片,返回包括start但不包括end的字符串
# 可以省略start或end,表示从开头或到结尾
# 判断字符串是否以”szd"结尾
print("xkszdbszdwsjd".endswith("szd"))
# 判断字符串是否以”xk"开头
print("xkszdbszdwsjd".startswith("xk"))

# 将字符串中的“szd”分割掉(将字符串按指定的分隔符分割成列表)
r = "xkszdbszdwsjd".split("szd")
print(type(r), r)
# 将分割部分用“&&”填补(拼接,将列表按指定的分隔符拼接成字符串)
print("&&".join(r))
# 将字符串中的"bszdwsjd"替换为"wskz"(替换子串)
print("xkszdbszdwsjd".replace("bszdwsjd", "wskz"))

print("".isalpha())

 

5.None

空值:NoneType

None表示空值,一个特殊Python对象,None的类型是NoneType。
None是NoneType数据类型的唯一值,我们不能创建其它NoneType类型的变量,但是可以将None赋值给任何变量。

None不支持任何运算
None和任何其他数据类型比较永远返回False
None有自己的数据类型NoneType,不能创建其他NoneType对象。(它只有一个值None)
None与0、空列表、空字符串不一样。
None赋值给任何变量,也可以给None值变量赋值
None没有像len、size等属性,要判断一个变量是否为None,直接使用。

6.List

        在Python中,可以使用方括号([ ])来定义列表,列表可以包含任意类型的元素,包括数字、字符串、布尔值、列表等,还可以使用list()内置函数将其他类型的数据转换为列表,要访问列表中的元素,可以使用索引值,索引从0开始。

方式一:for e  in l6:不关注索引,直接获取元素。

方式二:for i in range(len(l6)):关注索引,通过索引获取列表内容。

列表常见操作:


l = [1, 3, 5]
# 默认在末尾插入指定数字
l.append(7)
print(l)
# 定点插入(在指定位置插入指定元素)
l.insert(1, 2)
print(l)
# 在末尾添加10个数
l.extend(range(10))
print(l)
# 删除索引为5的数
l.pop(5)
print(l)
# 删除从左往右第一个1(如果不存在则报错)
l.remove(1)
print(l)
# 查找6的索引(查找指定数字索引)
r = l.index(6)
print(r, l)
# 统计列表中6的个数(统计元素出现次数)
r = l.count(6)
print(r, l)
# 逆序排列
l.reverse()
print(l)
# 默认升序排列(加入“reverse=True”则为降序排列)
l.sort()
print(l)
l.sort(reverse=True)
print(l)

# 清空列表
l.clear()
print(l)

 

7.Tuple

元组是一个不可以改变的列表,任意数据类型都可以放在元组中。元组是不可以变的,内容一旦确定意味着内存固定了,内存管理更加高效,没有多余的修改操作;元组确定代表内部元素确定,不意味内部存储的列表不可以改变。

Id:方法可以返回变量的唯一标识

方式一:()
注意事项:如果只有一个元素 则逗号不可以省略,省略了变成单个数值
(10,);a = (10, 20);a = 10, ;a = 10, 20, 30;

a, b=10, 20 不是元组,而是把10赋予a  20赋予b

方式二:tuple(可迭代)

元组常见操作:

"""
列表是可以改变的
拥有方法  append  insert extend
pop remove clear
reverse sort
index count
元组是不可以改变的,一旦确定不可修改
index(value)  返回元素对应索引,找不到报错
count(value)  返回元素出现次数,找不到返回0
凡是可以使用元组的地方都可以使用列表
"""
t0 = ()
print(t0, type(t0))
t1 = (1,)
print(t1, type(t1))
t2 = (1, 2, 3)
print(t2, type(t2))
t3 = 1, 2, 3
print(t3, type(t3))
t4 = tuple("xk")
print(t4, type(t4))
t5 = tuple(range(10))
print(t5, type(t5))
t6 = tuple([1, 2, 3, 4, 5])
print(t6, type(t6))

t7 = (1, 1.1, "xk", False, True, None, [], range(10))
print(t7, type(t7))

l0 = [1, 2, 3]
print(id(l0))
l0.insert(0, 0)
print(id(l0))
t8 = ("xk", 417, l0)
print(id(t8))

t8 = (417, "xbsr")
print(id(t8))

t9 = (1, 2.2, "xk", True)

 

8.Dict

特性:类似列表,一个变量可以存储多个值
    优点:通过键可以快速的获取值,列表获取目标元素 需要从列表的第一个元素开始逐个获取对应的内存地址。
    缺点:需要额外存储一些键。

方式一:{},键与值之间使用冒号,多个键值对之间使用逗号隔开。

方式二:dict、dict(),空字典;dict(a=10,b=20),指明键和值。

键与值:键是不可变类型,99.99999的键都是字符串;值可以是任意数据类型。

字典常见操作:

"""
num
str
bool
None

list:一个变量可以存储多个数据
tuple:不可变的  内存管理更高效
dict:一个变量可以存储多个数据(通过键值对的形式)
     优点:通过键快速获取对应的值
     缺点:需要额外存储一些键

"""

d0 = {}
print(d0, type(d0))
d1 = {
    "name": "xk",
    "gx": "xql"
}
print(d1, type(d1))
print(d1, len(d1))
d2 = dict()
print(d2, type(d2))
d3 = dict(a=1, b=2, c=3)
print(d3, type(d3))
d4 = {
    "id": 238,
    "name": "空",
    "age": None,
    "houses": ["cgh", "望舒"],
    "friend": ("twt", "shen", "sw"),
    "hobbys": {
        "1": "mr",
        "2": "tl"
    }
}
print(d4)
d4["sex"] = "xiao"
d4["sex"] = "hfyc"

d5 = {
    1: "ha",
    1.1: "haha",
    (): "ha",
    None: None,
    True: "bool",
    False: "ha",
    "h": "ha"
}
print(d5)

d6 = {}
# 添加 变量名 [键名] = 值
d6["id"] = 238
d6["name"] = "xk"
print(d6, len(d6))
# 遍历所有的键
for k in d6.keys():
    print(k, d6[k])
# 遍历所有的值
for v in d6.values():
    print(v)
# 遍历所有的键值对
for k, v in d6.items():
    print(k, v)
# 删除指定的键 并且返回对应的值
r = d6.pop("id")
print(r, d6)
# 删除并且返回(元组)最后放入的一个键值对 一般不关注字典键值对的先后顺序
r = d6.popitem()
print(r, d6)
# 在原字典中添加键 合并一个字典到原始字典
d6.update({
    "age": True,
    "ha": "haha"
})
print(d6)
# 获取“age”键对应的值(获取指定键对应分支)
r = d6.get("age")
print(r)
# 键不存在返回None
r = d6.get("name")
print(r)
# 指定键不存在时返回的默认值
r = d6.get("name", "空")
print(r)
# 清空字典
d6.clear()
print(d6)

 

9.Set

可以存放多个元素

特性:不重复,可以用于去重;无序,不可以使用下标。

遍历:for e in {1,3,4,5}: 将集合中的每一个元素依次赋予e。

方式一:{a,b,c,d},缺点:不能定义空集合。

方式二:set(),空集合;set(Iterable),将可迭代类型元素依次放入集合。

集合常见操作:

# 可以存放多个元素
# 特性:不重复  无序(不可以使用下标)

# 方式一  不能定义空集合
s0 = {1, 2, 3, 4, 5, 6}
print(s0, type(s0))
# 方式二  将可迭代类型元素放入集合
s1 = set()  # 空集合
print(s1, type(s1))

s2 = set(range(10))
print(s2, type(s2))

# 特性  去除重复元素
s3 = {1, 2, 3, 4, 5, 6, 5, 4, 3, 2, 1}
print(s3, type(s3))

s4 = {3, 4, 2, 6, 1, 5}
print(s4, type(s4))
# 将集合中的元素依次赋予e
for e in s4:
    print(e)

s5 = {1, 2, 3}
# 添加元素
s5.add(6)
print(s5)
# 合并集合
s5.update({4, 5, 7, 8})
print(s5)
# 移除指定元素
s5.remove(4)
print(s5)
# 删除指定元素 不存在报错
s5.discard(1)
print(s5)
# 任意删除一个元素 并返回删除的元素
r = s5.pop()
print(r, s5)
r = s5.pop()
print(r, s5)
r = s5.pop()
print(r, s5)
# 清空
s5.clear()
print(s5)

s6 = {4, 1, 7}
s7 = {1, 2, 3}
# 交集  两者都有
s8 = s6.intersection(s7)
print(s8, s7, s6)
# 差集  自己有 别人没有
s9 = s6.difference(s7)
print(s9, s6, s7)
# 并集  一方有即可
s10 = s6.union(s7)
print(s10, s6, s7)

标签:xk,None,python,数据类型,s5,d6,print,type
From: https://blog.csdn.net/2401_86120676/article/details/140388861

相关文章

  • Python序列
    Python序列在Python中,序列类型包括字符串、列表、元组、集合和字典,这些序列支持以下几种通用的操作,但比较特殊的是,集合和字典不支持索引、切片、相加和相乘操作。字符串也是一种常见的序列,它也可以直接通过索引访问字符串内的字符。序列索引序列中,每个元素都有属于自己的编......
  • Python基础知识
    Python基础知识Python注释Python单行注释Python中使用井号(#)作为单行注释的符号,语法格式为:#注释内容也就是说,从符号#处开始,直到换行处结束,此部分内容都作为注释的内容,当程序执行时,这部分内容会被忽略。单行注释放置的位置,既可以是要注释代码的前一行,例如:#这是一行简单的......
  • python热门面试题三
    面试题1:Python中的列表推导式是什么?请给出一个例子。回答:列表推导式(ListComprehension)是Python中一种非常强大且简洁的构建列表的工具。它允许你通过一个表达式来创建一个新的列表,这个表达式定义了新列表中的元素应该如何从旧列表或其他可迭代对象中派生出来。列表推导式......
  • python热门面试题五
    当然,以下是两个Python经典面试题及其详细回答:面试题1:Python中的深拷贝和浅拷贝有什么区别?请举例说明。回答:在Python中,深拷贝(deepcopy)和浅拷贝(shallowcopy)是两种不同的拷贝机制,它们用于创建对象的副本。浅拷贝:创建一个新对象,但它包含的是对原始对象中包含项的引用,而不......
  • Python装饰器
    装饰器(Decorators)是Python的一个重要部分。我们现在想要在程序中定义两个函数,分别用类打印九九乘法表和计算N以内的数字累加的和。#定义功能:打印九九乘法表defprint_nine_table():forlineinrange(1,10):forcolumninrange(1,line+1):......
  • 第八篇:Python集合:高效的无序集数据结构
    1.集合的定义Python中的集合(set)是一种高度优化的无序且不重复的数据结构。它在概念上类似于数学中的集合,能够存储多个不同的元素。集合的这种特性使其成为处理唯一性和成员资格检查的理想选择。在Python中,我们可以通过两种主要方式定义集合:a)使用花括号{}:set1={1,......
  • 总结篇:Python数据类型总结
    在Python中,数据类型是编程的基础。理解和熟练运用各种数据类型及其操作方法,是编写高效、优雅代码的关键。本文将结合自己的理解,详细介绍Python中的几种基本数据类型及其常用操作。一.整数(Int)整数是最基本的数据类型之一,主要用于表示没有小数部分的数值。常用操作:1.声明整......
  • Python项目开发实战,掷硬币的连胜,案例教程编程实例课程详解
    在Python中进行实战项目,比如模拟掷硬币并记录连胜次数,是一个既有趣又能加深理解随机数生成、循环控制、条件判断等编程基础的好方法。下面,我将逐步引导你完成一个详细的Python项目,该项目将模拟掷硬币的过程,并追踪记录连胜的次数,同时我们会深入探讨一些编程概念,如函数封装、异常......
  • 初学者必看的 3 个 Python 小项目
    我们都知道,将知识点融入实际操作是提高编程学习效率的关键。尤其对于初学者来说,通过学习一些涉及核心编程概念的简单项目,不仅可以深化对编程语言的理解,还能快速提高解决问题的能力。下面将探讨三个基础的Python项目:计算器、猜数字游戏和待办事项列表,旨在巩固Python基础......
  • 教你使用 python 不到100行 制作 音乐播放器
    在这篇博客中,我们将使用Python的PyQt5和pygame库来创建一个简单的音乐播放器应用程序。我们的音乐播放器将具有基本的播放、暂停、上一首和下一首功能。导入所需的库首先,我们需要导入我们将在应用程序中使用的库:importosimportpygameimportqtawesomeasqtafr......