当前位置: 首页 > news >正文

Python 学习(2) ---- Python 数据类型

目录

        • 数字类型
        • 字符串
        • print 输出
        • import 语句
        • 变量定义
        • 数据类型
        • 布尔类型
        • List 列表
        • Tuple 元组
        • Set(集合)
        • Dictionary(字典)
        • bytes 类型

数字类型

Python 中有四种数字类型: 整数,布尔型,浮点和数字
int: 没有 long
bool: 只有 TrueFalse
float: 1.23 或者 1.2E-3
complex: 实部加虚部,比如 1+2j

inta = 1000
floatb = 1.23
boolc = True
complexed = 1+2jprint("type inta:", type(inta))
print("type floatb:", type(floatb))
print("type boolc:", type(boolc))
print("type complexed",type(complexed))print("type inta isinstance:", isinstance(inta, int))
print("type floatb isinstance:", isinstance(floatb, float))
print("type boolc isinstance:", isinstance(boolc,bool))
print("type complexed isinstance:",isinstance(complexed, complex))
字符串
  1. Python 中的 ’ 和 " 含义完全一样
  2. 使用 ‘’’ 和 “”" 指定一个多行字符串
  3. 使用转义符 \
  4. 反斜杠用于转义 比如 \n,但是 r 可以不让 \ 产生转义,比如 r"this is a line\n" 不会换行
  5. 使用空格可以实现级联 "this" "is" "string" = "this is string"
  6. 字符串可以使用 + 连接, 使用 * 字符串重复
  7. Python 字符串有两种索引方式,从左到右从 0 开始,从右到左 -1 开始
  8. Python 中的字符串不能改变
  9. Python 中没有单独的字符类型,一个字符就是一个长度为1的字符串
  10. 字符串切片 str[start:end] start(包含) 表示开启,end(不包含)表示结束
  11. 字符串切片可以加上步长 step, 词法格式是 str[start:end:step]

strings

print 输出

print 输出是默认换行的,如果不换行要加 end =""

import 语句

python 使用from... import 或者 import 来导入对应模块

将某个模块导入:
import somemodule

从模块中导入函数:
from somemodule import somefunction

从模块中导入多个函数:
from somemodule import firstfunction,second function,third function

导入模块中的所有函数:
from somemdoule import *

变量定义

Python 中的变量顶定义不需要指定类型,变量需要再使用前赋值,赋值之后变量才会被创建
可以连续的方式为变量赋值

a = b = c = 1

也可以为多个变量指定值

a,b,c = 12"demo"# ==>
a = 1
b = 2
c = "demo"
数据类型

Python 中有 7 个标准数据类型:

  • Number(数字)
  • Tuple(元组)
  • Set(集合)
  • Dictionary(字典)
  • Bool(布尔)
  • String(字符串)
  • List(列表)

不可变数据类型: 数字元组字符串
可变数据类型: 列表字典集合

  1. Python 可以同时为多个变量赋值
  2. 一个通过赋值指向不同类型的变量
  3. 数值除法包含两种: / 返回浮点数 // 返回一个整数
  4. 在混合运算中,Python 会把整数转换为浮点数
布尔类型
  • bool 类型只有两个值 TrueFalse
  • bool 类型是 int 类型的子类,因此 bool 可以被看做整数使用,True 的值等于 1
  • 布尔类型可以和其他类型进行比较,比如数字和字符串,比较时 True 的值为 1False 的值为 0
  • 布尔类型可以转换为其他数据类型,此时 True 的值为 1False 的值为 0
  • 可以使用布尔函数将其他类型的值转换为布尔值

Python 中,所有非空和非0的字符串、列表和元组类型都是 True,只有0,空字符串,空列表被视为 False
因此在进行布尔类型的运算的时候,需要注意数据类型的真假性

a = True
b = Falseprint(type(a))
print(type(b))# bool
print(bool(0)) # false
print(bool(42))# true
print(bool(-42))# true
print(bool(""))# false
print(bool("hello"))# true
print(bool([]))# false
print(bool([1,2]))# true
print("==================================================================")
print(True and False) # false
print(True or False) # true
print(not False) # trueprint(5 > 3) # true
print(5 == 3) # false
List 列表

listpython 中使用最频繁的数据类型
列表中的原生类型可以不相同,它支持数字、字符串甚至包含列表
列表中的元素也是支持截取的,但是可字符串不同,列表中的元素可以改变

list 中内置了很多方法 比如 append()pop()
list 使用 [] 进行定义

list = ["abcd", 786, 2.23, "runoob", 70.2]
print("list:", list)
print("list[0]:",list[0])
print("list[1:3]:",list[1:3])
print("list[4::-1]:",list[4::-1])list[1] = "hahah"
print("list:", list)
#list: ['abcd', 786, 2.23, 'runoob', 70.2]
#list[0]: abcd
#list[1:3]: [786, 2.23]
#list[4::-1]: [70.2, 'runoob', 2.23, 786, 'abcd']
#list: ['abcd', 'hahah', 2.23, 'runoob', 70.2]
Tuple 元组

元组和列表类似,不同之处在于元组的元素不能修改,元组写在 () 里,元组之间用逗号隔开
元组中的类型可以不一致,tuple 里可以包含可变对象,比如 list

字符串可以看成一种特殊类型的元组

注意:

  • 和字符串一样,元组的元素不能修改
  • 元组也可以被索引和切片,方法是一样的
  • 注意包含 0 个和 1 个元素元组的特殊语法规则
  • 元组可以使用 + 操作符进行拼接

元组(tuple) 使用 () 进行定义

# tuple 内的元素不可改变
# string 是一种特殊的 tuple
tuple = ("abcd", 786, 2.23, "runoob", 70.2)
tinytuple = (123, "runoob")onetuple = ("hello",)print(tuple)
print(tuple[0:4])
print(tuple[2:])
print(tuple + tinytuple)
print(tuple + tinytuple + onetuple)#('abcd', 786, 2.23, 'runoob', 70.2)
#('abcd', 786, 2.23, 'runoob')
#(2.23, 'runoob', 70.2)
#('abcd', 786, 2.23, 'runoob', 70.2, 123, 'runoob')
#('abcd', 786, 2.23, 'runoob', 70.2, 123, 'runoob', 'hello')
Set(集合)

Python 中的 set 是一种无序的,可变的数据类型,用于存储唯一的元素
集合中的元素不可以重复,并且可以进行并集,差集,交集等集合运算
python 中集合使用 {},元素使用,进行分割

注意创建一个空集用() 而不是 {},用 {} 创建一个空字典
Set 使用 ()

# Set 元素内容不可重复
# Set 内的内容是无序的
# Set 可以实现集合操作
sites = {"Google", "Amazon", "baidu", "Google", "mircosoft"}
print(sites)if "taobao" in sites:print("taobao in sites")
else:print("taobao not in sites")a = set("orzhello")
b = set("world")# {'e', 'o', 'l', 'r', 'z', 'h'}
print("set a:",a)# a 和 b 交集
print( a & b)# a 和 b 并集
print( a | b)# in a not in b
print( a - b)print( a ^ b)"""
{'mircosoft', 'Amazon', 'Google', 'baidu'}
taobao not in sites
set a: {'h', 'l', 'r', 'o', 'e', 'z'}
{'o', 'l', 'r'}
{'w', 'd', 'h', 'l', 'r', 'o', 'e', 'z'}
{'z', 'e', 'h'}
{'w', 'd', 'e', 'z', 'h'}
"""
Dictionary(字典)

列表是有序对象的集合,集合是无序对象的集合,两种的区别在于: 字典中的元素是通过键来存取的,而不是通过偏移存取
字典是一种映射类型,字典用 {} 标记,它是一种无序的 键(key):值(value) 的集合

# diction 是无序对象的集合, diction 中的元素通过键值存取, 不是通过偏移
# dict 里的内容可以存取的
# dict 也是用 { }
dict = {}
dict["one"] = "hello"
dict[2] = "wangchen"print(dict)
print(dict.keys())
print(dict.values())tinydict = {"name":"wangchen", "telnumber":15251059623, "sites":"www.asrmicro.com"}print(tinydict)
print(tinydict["name"])
print(tinydict["sites"])tinydict["telnumber"] = 15651022367
print(tinydict)
"""
{'one': 'hello', 2: 'wangchen'}
dict_keys(['one', 2])
dict_values(['hello', 'wangchen'])
{'name': 'wangchen', 'telnumber': 15251059623, 'sites': 'www.asrmicro.com'}
wangchen
www.asrmicro.com
{'name': 'wangchen', 'telnumber': 15651022367, 'sites': 'www.asrmicro.com'}
"""
bytes 类型

python3 中的 bytes 类型表示的是不可变的二进制序列
和字符串不同的是,bytes 类型中的元素是整数(0 ~ 255 之间),而不是 unicode 字符
bytes 经常用来处理二进制数据,比如 图像文件,音视频文件等

和字符串类型,bytes 类型也支持很多操作和方法 比如 切片,拼接,查找和替换,同时由于 bytes 类型是不可变的
因此修改操作需要一个新的 bytes 类型

http://www.dtcms.com/a/454136.html

相关文章:

  • 三更app下载网站衡阳网站设计
  • 语言结构的基本单位:语素、词根与词缀
  • 线程邮箱(1)
  • 【深入理解计算机系统第3版】浮点数舍入和在不同位模式下的变换2.52
  • 有了域名和空间怎么做网站网站怎么做下拉刷新
  • 【完整源码+数据集+部署教程】 水果叶片分割系统: yolov8-seg-dyhead
  • 前端如何做双语网站wordpress缓存插件汉化破解版
  • Python回调函数中携带额外状态的完整指南:从基础到高级实践
  • 郑州的设计公司企业网站建设推荐乐云seo
  • OpenAI 推出 ChatGPT 应用系统,开发者可在平台内构建互动式应用
  • 【Coze】1.Coze 的基本介绍
  • 字符串比较函数strcmp和strncmp以及memcmp详解与对比分析
  • linux练习-2
  • 大连做网站首选领超科技35互联做的网站
  • 国庆科技感祝福:Python 粒子国旗动画
  • 厦门微信网站开发潮州汕头
  • SSH隧道技术详解:从本地端口转发到实战应用
  • 西宁微网站建设电商网名大全
  • 网站多少钱一米无锡市住房建设局网站
  • 做自己网站做站长女的和男的做那个视频网站
  • 东莞网站维护wordpress调用分类链接
  • 贵阳网站建设包首页钦州建站哪家好
  • excel 表格 做的网站wordpress+qq音乐插件
  • 安阳七彩祥云网络公司seo人员的职责
  • k8s面试题
  • 齐齐哈尔建设局网站中卫 网红打卡地
  • 【完整源码+数据集+部署教程】 水道图像分割系统: yolov8-seg-EfficientHead
  • 做手机网站用什么网站互动性
  • 南宁市做公司网站个人工作室和公司的区别
  • 2019历年-英语