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

python基础之数据类型

时间:2023-11-28 20:01:02浏览次数:44  
标签:name python 数据类型 age 基础 元组 kevinNB print My

数据类型(重要)

什么是数据类型?
	视频文件 音频文件 表格文件 图片 等等这些都是保存数据的方式
# 在IT领域也有各种各样的保存数据的方式

数据类型的种类?
- 数字类型
  - 整数类型(int)
  - 浮点类型(float)
- 字符串类型(str)
- 列表类型(list)
- 字典类型(dict)
- 布尔类型(bool)
- 元祖类型(tuple)
- 集合类型(set)

数据类型之整型(int)

作用:记录年龄、出生年份,学生人数等整数相关的状态
定义:
	age = 18
    student_count = 48
    year = 2001
数据类型的关键字:
	print(type(age))

浮点型(float)

作用:用来记录人的身高,体重,薪资等小数相关的状态
定义:
	height = 1.8
    weight = 120.5
    salary = 2800.5
数据类型的关键字:
	print(type(height))

数字类型的应用

(1)数字运算

  • 整数和浮点数可以进行常见的数学运算,包括加法、减法、乘法、除法等。
a = 10
b = 3.5
result = a + b

# 结果为浮点数 13.5
print(result)  # 13.5
print(type(result))  # <class 'float'>

(2)比较大小

  • 我们可以使用比较运算符(如<><=>=)来比较数字的大小,得到布尔类型的结果
a = 5
b = 2
compare_result = a > b

# 结果为True
print(compare_result)  # True
print(type(compare_result))  # <class 'bool'>

数据类型之字符串(str)

作用:用来记录人的名字,家庭住址,性别等描述性质的状态
定义:
	方式一:
    	username = 'kevin'  # 单引号
    方式二:
    	username = "kevin"  # 双引号
    方式三:
    	username = '''kevin''' # 当三引号的左边有赋值符号的时候就是字符串,否则是注释
    方式四:
    	username = """kevin""" # 当三引号的左边有赋值符号的时候就是字符串,否则是注释
    print()
    总结:就是引号引起来的部分都是字符串!
 
为什么需要有这么多定义的方式?
	res = '李老师说:'趁年轻,学技能,养活自己''
    
res = '李老师说:"趁年轻,学技能,养活自己"'
res = "李老师说:'趁年轻,学技能,养活自己'"
print(res)

# 一个字符串中出现了使用多个引号的是情况:外边是单引号,里面就是双引号,相反!

# 字符串的拼接
res1 = 'hello'
# res2 = 'world'
# res = ',python'
# print(res1 + res2 + res)  # helloworld

# 重复字符串
print(res1 * 20) # hellohellohellohellohellohellohellohellohellohello

数据类型之列表(list)

作用:列表类型就是专门用来记录多个同种属性的值(比如同一个班级多个学生的姓名、同一个人的多个爱好等),并且存取都十分方便

定义: 
    stu_names = ['张三','李四','王五']

# 使用中括号括起来,内部存放多个元素值,元素与元素之间使用逗号分割,内部可以存放任意的数据类型
	stu_names = [1, 2, 1.1, 1.2, '张三','李四','王五']
    
存起来如何取值:
    	
# 练习题:
l = [1, 2, 3, ['kevin', 'tony', ['a', 'b', [11, 22, 'kevinNB', [111, 222, 333, 4444, 555, 666]]]]]

# 取出来  kevinNB
# 1. 问'kevinNB'在列表的第几个元素
l1 = l[3]
print(l1)  # ['kevin', 'tony', ['a', 'b', [11, 22, 'kevinNB']]]

# 2. 问'kevinNB'在列表的第几个元素
l2 = l1[2]
print(l2)  # ['a', 'b', [11, 22, 'kevinNB']]

# 3. 问'kevinNB'在列表的第几个元素
l3 = l2[2]
print(l3)  # [11, 22, 'kevinNB']

l4 = l3[2]
print(l4)  # kevinNB

# 合并一下
# l5 = l[3][2][2][2]
l5 = l[3][2][2][3][5]
print(l5)

数据类型之字典(dict)

作用:
	如果我们需要用一个变量记录多个值,但多个值是不同属性的比如人的姓名、年龄、身高,用列表可以存,但列表是用索引对应值的,而索引不能明确地表示值的含义;这就用到字典类型,字典类型是用key:value形式来存储数据。
	其中key可以对value有描述性的功能,能够明确的描述详细信息。
定义:
	d = {'username':'kevin', 'age':18, 'gender':'male', 'salary':2000}
    
字典就是使用大括号括起来,内部存放多个元素值,元素与元素之间使用逗号隔开,但是,元素类型是key:value的形式,key是对value的解释型信息,value才是真正的变量值

取值:
### 练习题一
info = {
    'username': 'jerry',
    'addr': [1, 2, 3, {'age': 18, 'gender': 'male', 'hobby': ['tangtou', 'xijio', 'anmuo', 'niejiao', {'a': 'kevinNB'}]}]
}

# 取出 kevinNB
# 1. 问kevinNB在字典的第几个位置
l1 = info['addr']
print(l1) # [1, 2, 3, {'age': 18, 'gender': 'male', 'hobby': ['tangtou', 'xijio', 'anmuo', 'niejiao', {'a': 'kevinNB'}]}]

# 2. 问kevinNB在列表的第几个位置
l2 = l1[3]
print(l2)  # {'age': 18, 'gender': 'male', 'hobby': ['tangtou', 'xijio', 'anmuo', 'niejiao', {'a': 'kevinNB'}]}

# 3. 问kevinNB在字典的第几个位置
l3 = l2['hobby']
print(l3)  # ['tangtou', 'xijio', 'anmuo', 'niejiao', {'a': 'kevinNB'}]

l4 = l3[4]
print(l4)  # {'a': 'kevinNB'}

l5 = l4['a']
print(l5)  # kevinNB

# 合并一下
l6 = info['addr'][3]['hobby'][4]['a']
print(l6)

###练习题二
info = {
    'name': 'Dream',
    'addr': {
        '国家': '中国',
        'info': [666, 999, {'编号': 466722, 'hobby': ['read', 'study', 'music']}]
    }
}

# 1. music在大字典里的位置
d1 = info['addr']  
print(d1)
# {'国家': '中国', 'info': [666, 999, {'编号': 466722, 'hobby': ['read', 'study', 'music']}]}

# 2. music在小字典里的位置
d2 = d1['info']  
print(d2)
# [666, 999, {'编号': 466722, 'hobby': ['read', 'study', 'music']}]

# 3. music在列表里的位置
d3 = d2[2]  
print(d3)
# {'编号': 466722, 'hobby': ['read', 'study', 'music']}

# 4. music在小字典里的位置
d4 = d3['hobby']  
print(d4)
# ['read', 'study', 'music']

# 5. music在列表里的位置
d5 = d4[2]  
print(d5)
# music

# 整合
d6 = info['addr']['info'][2]['hobby'][2]
print(d6)
# music
##.get方法与中括号取值的区别
# 取值 --- 中括号,放键
name = name_dict['name']
print(name)
# 取值 --- get
name = name_dict.get('name')
print(name)
# 当原来字典里没有相关键的时候,.get方法打印出来的是none,而中括号是报错
age = name_dict.get('age', 18)
print(age)
print(type(age))

数据类型之布尔类型(bool)

作用:布尔类型用于表示逻辑值,只有两个取值:True 和 False。在编程中,布尔类型经常用于控制程序的流程,例如条件判断、循环等。
定义:
	a = True # 代表的是真、对、正确的等含义
    b = False # 代表的是假、错、不正确等含义

# 布尔类型的变量命名一般使用is_开头
is_right = True
is_ok = False
is_delete = True

# 扩展:is_delete
name		age		gender 		phone 		is_delete
kevin		18		male		110				1


# python中什么是真、什么是假?
	你只需要记住哪些是假的情况,其余都为真
     哪些是假?
        0、''、None、[]、{}、等

数据类型之元组(tuple)

# 元组就是不可变的列表,其他的跟列表都一样
定义:
	t = (1,2,3,4,5)
元组就是使用小括号括起来,内部存放多个元素值,元素与元素之间使用逗号隔开,它不能够修改,其余的跟列表都一样,也是索引(下标)来取值

取值:
	print(t[0])

元组的使用

(1)元组的不可变性
  • 由于元组是不可变的,不能对元素进行修改、删除或添加。
# 尝试修改元组的元素(会报错)
my_tuple[0] = 42  # TypeError: 'tuple' object does not support item assignment

# 尝试删除元组的元素(会报错)
del my_tuple[1]  # TypeError: 'tuple' object doesn't support item deletion

# 尝试添加元素到元组(会报错)
my_tuple.append('new_element')  # AttributeError: 'tuple' object has no attribute 'append'
(2)元组的基本操作
  • 元组支持基本的操作,如切片、拼接等。
# 切片操作
sliced_tuple = my_tuple[1:3]
print(sliced_tuple)  # ('hello', 3.14)

# 拼接操作
new_tuple = my_tuple + ('world', False)
print(new_tuple)  # (1, 'hello', 3.14, True, 'world', False)
(3)元组解包
  • 元组解包是一种将元组中的元素分配给多个变量的方法。
# 元组解包
a, b, c, d = my_tuple

print(a)  # 1
print(b)  # 'hello'
print(c)  # 3.14
print(d)  # True
(4)元组的应用场景
  • 用于函数返回多个值
  • 保持数据的不可变性,适用于一些常量集合的场景
  • 元组作为字典的键(因为元组是不可变的)
# 函数返回多个值
def get_coordinates():
    return 10, 20, 30

x, y, z = get_coordinates()
print(x, y, z)  # 10 20 30

# 元组作为字典的键
coordinates_dict = {(1, 2, 3): 'Point A', (4, 5, 6): 'Point B'}
print(coordinates_dict[(1, 2, 3)])  # Point A
  • 元组是一个灵活且强大的数据类型,适用于许多场景,特别是需要不可变性的情况。

数据类型之集合(set)

作用:集合(set)是一种无序、不重复的数据类型,用于存储多个独立的元素。集合主要用于:去重、关系运算
定义:
	s = {1, 2, 3, 4}
 使用大括号括起来,内部存放多个元素值,元素与元素之间使用逗号隔开,但是不是key:value的形式

集合的特点:去重
# 练习题:
l = [1, 2, 3, 4, 1, 2, 3, 4]

# 可以把列表转为集合
s = set(l)

print(s) # 集合的类型

ll = list(s)
print(ll)  # [1, 2, 3, 4]

# 如何定义一个空集合
# 如何定义一个空字典

d = {}
print(d, type(d))  # dict

s =  set()
print(s, type(s)) # <class 'set'>

集合运算

  • 集合支持多种集合运算,如并集、交集、差集等。
set_a = {1, 2, 3, 4}
set_b = {3, 4, 5, 6}

# 并集
union_set = set_a.union(set_b)

# 交集
intersection_set = set_a.intersection(set_b)

# 差集
difference_set = set_a.difference(set_b)

格式化输出

1. %输出

​ 使用 % 运算符进行格式化输出,可以在字符串中插入占位符,然后通过 % 运算符传入相应的值。

# 格式化输出语法一 : %
name = "xiao"
age = 18
height = 175.5

# 使用 %s 占位符,输出字符串
print("My name is %s." % name)  
# My name is xiao.

# 使用 %d 占位符,输出整数
print("My age is %d." % age)  
# My age is 18.

# 使用 %f 占位符,输出浮点数,默认保留六位小数
print("My height is %f." % height)  
# My height is 175.500000.

# 使用 %.2f 占位符,保留两位小数
print("My height is %.2f." % height)  
# My height is 175.50.

# 使用 %x 占位符,输出十六进制整数
number = 255
print("Number in hex: %x." % number)  
# Number in hex: ff.

# 两个以上的占位符格式化输出
print("My name is %s; My age is %d" % (name, age)) 
# My name is xiao; My age is 18

2. format输出

​ 使用 format 方法进行格式化输出,通过花括号 {} 表示占位符,然后调用 format 方法传入实际值

name = "xiao"
age = 18
# 格式化输出语法二 : formate
print("My name is {}; My age is {}".format(name, age))
# My name is xiao; My age is 18

​ 在这个例子中,{} 是占位符,它会按顺序依次填充传入 format 方法的值。

3. f + {}输出

​ 使用 f-string(f + {})进行格式化输出,通过在字符串前加上 fF 前缀,然后在字符串中使用 {} 表示占位符,并在 {} 中直接引用变量。

name = "xiao"
age = 18
# 格式化输出语法三 : f + {}
print(f"My name is {name}; My age is {age}")
# My name is xiao; My age is 18

字符串转义

​ 在字符串中,转义字符用于表示一些特殊字符或执行一些特殊操作,常用的转义字符如下:

转义字符 说明
\n 换行符,将光标位置移到下一行开头。
\r 回车符,将光标位置移到本行开头。
\t 水平制表符,也即 Tab 键,一般相当于四个空格。
\a 蜂鸣器响铃。注意不是喇叭发声,现在的计算机很多都不带蜂鸣器了,所以响铃不一定有效。
\b 退格(Backspace),将光标位置移到前一列。
\ 反斜线
' 单引号
" 双引号
\ 在字符串行尾的续行符,即一行未完,转到下一行继续写。
# 换行符
print("Hello\nWorld")
# Hello
# World

# 制表符
print("Name\tAge")
# Name    Age

# 反斜线
print("This is a backslash: \\")
# This is a backslash: \

# 单引号
print("I'm a programmer.")
# I'm a programmer.

# 双引号
print("He said, \"Hello.\"")
# He said, "Hello."

# 回车符与退格符
print("One\rTwo\bThree")
# Two Three

标签:name,python,数据类型,age,基础,元组,kevinNB,print,My
From: https://www.cnblogs.com/xiao01/p/17862856.html

相关文章

  • python基础之变量与常量
    注释语法#学语言先学注释,注释是代码之母!1.什么是注释? 注释就是对一段代码的解释,它不参与代码的实际运行,起到提示作用.2.如何使用注释? 方式一: 警号#单行注释""" 还可以借助于快捷键 code reformatcode ctrl+......
  • python基础之用户交互
    程序与用户交互概念:用户交互就是人往计算机中input/输入数据,计算机print/输出结果############输入a=input('请输入您的密码:')#'1'1"""只要是input,接收的数据类型全部都是str类型的,不管你输入的类型是什么类型的"""#如果以后你需要做运算,需要转类型#print(usernam......
  • 【python入门之程序与用户交互】---程序与用户交互
    【一】什么是与用户交互交互的本质就是输入、输出用户交互就是人往计算机中input/输入数据,计算机print/输出结果【二】为什么要与用户交互为了让计算机能够像人一样与用户沟通交流过去我们去银行取钱,用户需要把帐号密码告诉柜员而现在,柜员被ATM机取代ATM机就是一台......
  • 【python入门之基本数据类型的学习】---基本数据类型(list、str)【二】
    【三】字符串类型(str)【1】作用字符串类型(str)用于表示文本信息,是一种非常重要的数据类型,用于处理文字、字符等信息【2】定义(1)定义方式字符串可以使用单引号、双引号或三引号进行定义#定义方式1:name_1='Jack'#(当左边有赋值符号和遍历名的时候,它就是字符串)#定......
  • 【python入门之基本数据类型】---基本数据类型(字典、布尔)【三】
    【五】字典类型(dict)【1】作用如果我们需要用一个变量记录多个值,但多个值是不同属性的比如人的姓名、年龄、身高,用列表可以存,但列表是用索引对应值的,而索引不能明确地表示值的含义这就用到字典类型,字典类型是用key:value形式来存储数据其中key可以对value有描述性的功能......
  • 【python入门之基本数据类型】---基本数据类型(元组、集合)【四】
    【七】元组类型(tuple)【1】作用元组(tuple)是一种不可变的序列类型,类似于列表,用于存储多个有序元素。元组与列表的主要区别在于元组的元素不能被修改、删除或添加,是不可变的数据类型。元组通常用于存储相关联的数据,保持数据的完整性。【2】定义元组通过小括号()......
  • 【Python爬虫】第11篇:Mongodb数据库进阶使用。从0到scrapy高手笔记(附代码,可自取)
    本文主要学习一下关于爬虫的相关前置知识和一些理论性的知识,通过本文我们能够知道什么是爬虫,都有那些分类,爬虫能干什么等,同时还会站在爬虫的角度复习一下http协议。全套笔记和代码自取地址:请移步这里感兴趣的小伙伴可以自取哦,欢迎大家点赞转发~共8章,37子模块Mongodb数......
  • 【Python进阶】第7篇:TCP和socket客户端程序开发。总结md文档集合(已分享,附代码)
    本文从14大模块展示了python高级用的应用。分别有Linux命令,多任务编程、网络编程、Http协议和静态Web编程、html+css、JavaScript、jQuery、MySql数据库的各种用法、python的闭包和装饰器、mini-web框架、正则表达式等相关文章的详细讲述。全套笔记和代码自取地址:请移步这里感......
  • 聪明办法学python第3次笔记
    条件ifelse语句if条件:执行行为else:执行行为elif语句:等同与c语言中的elsei语句ifx>10:print()elifx=10:print(2)else:print(3)ifelse推导式print(nif(n>0)else-n)match-case语句:等同于c语言中的switch-casem=map(int(),input())match......
  • 20-基础SQL-多表查询
     多表关系项目开发过程中,在进行数据库表结构设计时,会根据业务需求及业务模块之间的关系,分析并设计表结构,由于业务之间相互关联,所以各个表结构之间也存在着各种联系,基本上分为以下三种:1.一对多(多对一)2.多对多案例1:创建学生表(student),课程表(course),学生课程关系表(student_......