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

Python数据类型

时间:2023-08-25 19:02:22浏览次数:50  
标签:输出 runoob Python 元素 数据类型 列表 字符串 print

Python数据类型

字符串(str)

字符串是 Python 中最常用的数据类型。我们可以使用引号 ( ' 或 " 或''') 来创建字符串。

创建字符串很简单,只要为变量分配一个值即可。

  • var1 = 'Hello World!'
    var2 = "Python Runoob"

字符串的截取的语法格式:变量[头下标:尾下标]

字符串1.jpg

  • str = 'Runoob'

print (str) # 输出字符串
print (str[0:-1]) # 输出第一个到倒数第二个的所有字符
print (str[0]) # 输出字符串第一个字符
print (str[2:5]) # 输出从第三个开始到第五个的字符
print (str[2:]) # 输出从第三个开始的后的所有字符
print (str * 2) # 输出字符串两次,也可以写成 print (2 * str)
print (str + "TEST") # 连接字符串

- Runoob

Runoo
R
noo
noob
RunoobRunoob
RunoobTEST

Python 使用反斜杠 \ 转义特殊字符,如果你不想让反斜杠发生转义,可以在字符串前面添加一个 r,表示原始字符串

  • print('Ru\noob')
    Ru
    oob

print(r'Ru\noob')
Ru\noob

注意,Python 没有单独的字符类型,一个字符就是长度为1的字符串。

列表(list)

List(列表) 是 Python 中使用最频繁的数据类型。

列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。

列表是写在方括号 [] 之间、用逗号分隔开的元素列表。

和字符串一样,列表同样可以被索引和截取,列表被截取后返回一个包含所需元素的新列表。

列表截取的语法格式:变量[头下标:尾下标]

列表.jpg

list = [ 'abcd', 786 , 2.23, 'runoob', 70.2 ]

tinylist = [123, 'runoob']

print (list) # 输出完整列表
print (list[0]) # 输出列表第一个元素
print (list[1:3]) # 从第二个开始输出到第三个元素
print (list[2:]) # 输出从第三个元素开始的所有元素
print (tinylist * 2) # 输出两次列表
print (list + tinylist) # 连接列表

  • ['abcd', 786, 2.23, 'runoob', 70.2]
    abcd
    [786, 2.23]
    [2.23, 'runoob', 70.2]
    [123, 'runoob', 123, 'runoob']
    ['abcd', 786, 2.23, 'runoob', 70.2, 123, 'runoob']

列表2.jpg

如果第三个参数为负数表示逆向读取,以下实例用于翻转字符串:

  • def reverseWords(input):

# 通过空格将字符串分隔符,把各个单词分隔为列表
    inputWords = input.split(" ")

# 翻转字符串
    # 假设列表 list = [1,2,3,4],  
    # list[0]=1, list[1]=2 ,而 -1 表示最后一个元素 list[-1]=4 ( 与 list[3]=4 一样)
    # inputWords[-1::-1] 有三个参数
    # 第一个参数 -1 表示最后一个元素
    # 第二个参数为空,表示移动到列表末尾
    # 第三个参数为步长,-1 表示逆向
    inputWords=inputWords[-1::-1]

# 重新组合字符串
    output = ' '.join(inputWords)
     
    return output

if name == "main":
    input = 'I like runoob'
    rw = reverseWords(input)
    print(rw)

字典(dict)

字典(dictionary)是Python中另一个非常有用的内置数据类型。

列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。

键(key)必须使用不可变类型。

在同一个字典中,键(key)必须是唯一的。

  • dict = {}
    dict['one'] = "1 -1"
    dict[2] = "2 - 1"

tinydict = {'name': 'runoob','code':1, 'site': 'https://www.cnblogs.com/zhangfanshixiaobai/p/17654671.html'}

print (dict['one']) # 输出键为 'one' 的值
print (dict[2]) # 输出键为 2 的值
print (tinydict)# 输出完整的字典
print (tinydict.keys())# 输出所有键
print (tinydict.values()) # 输出所有值

- 1 -1

2 - 1
{'name': 'runoob', 'code': 1, 'site': 'https://www.cnblogs.com/zhangfanshixiaobai/p/17654671.html'}
dict_keys(['name', 'code', 'site'])
dict_values(['runoob', 1, 'https://www.cnblogs.com/zhangfanshixiaobai/p/17654671.html'])

布尔类型(bool)

布尔类型只有两个值:True 和 False。

布尔类型可以和其他数据类型进行比较,比如数字、字符串等。在比较时,Python 会将 True 视为 1,False 视为 0。

布尔类型可以和逻辑运算符一起使用,包括 and、or 和 not。这些运算符可以用来组合多个布尔表达式,生成一个新的布尔值。

布尔类型也可以被转换成其他数据类型,比如整数、浮点数和字符串。在转换时,True 会被转换成 1,False 会被转换成 0。

  • a = True
    b = False

比较运算符

print(2 < 3)   # True
print(2 == 3)  # False

逻辑运算符

print(a and b)  # False
print(a or b)   # True
print(not a)    # False

类型转换

print(int(a))   # 1
print(float(b)) # 0.0
print(str(a))   # "True"

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

元组(tuple)

元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开。

tuple = ( 'abcd', 786 , 2.23, 'runoob', 70.2 )

tinytuple = (123, 'runoob')

print (tuple) # 输出完整元组
print (tuple[0]) # 输出元组的第一个元素
print (tuple[1:3]) # 输出从第二个元素开始到第三个元素
print (tuple[2:]) # 输出从第三个元素开始的所有元素
print (tinytuple * 2) # 输出两次元组
print (tuple + tinytuple) # 连接元组

  • ('abcd', 786, 2.23, 'runoob', 70.2)
    abcd
    (786, 2.23)
    (2.23, 'runoob', 70.2)
    (123, 'runoob', 123, 'runoob')
    ('abcd', 786, 2.23, 'runoob', 70.2, 123, 'runoob')

元组与字符串类似,可以被索引且下标索引从0开始,-1 为从末尾开始的位置。也可以进行截取(看上面,这里不再赘述)。

其实,可以把字符串看作一种特殊的元组。

>>> tup = (1, 2, 3, 4, 5, 6)

print(tup[0])
1
print(tup[1:5])
(2, 3, 4, 5)
tup[0] = 11  # 修改元组元素的操作是非法的
Traceback (most recent call last):
  File "", line 1, in
TypeError: 'tuple' object does not support item assignment

虽然tuple的元素不可改变,但它可以包含可变的对象,比如list列表。

构造包含 0 个或 1 个元素的元组比较特殊,所以有一些额外的语法规则:

  • tup1 = () # 空元组
    tup2 = (20,) # 一个元素,需要在元素后添加逗号

集合(set)

Python 中的集合(Set)是一种无序、可变的数据类型,用于存储唯一的元素。

集合中的元素不会重复,并且可以进行交集、并集、差集等常见的集合操作。

在 Python 中,集合使用大括号 {} 表示,元素之间用逗号 , 分隔。

另外,也可以使用 set() 函数创建集合。

注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

  • sites =

print(sites) # 输出集合,重复的元素被自动去掉

成员测试

if 'Runoob' in sites :
print('Runoob 在集合中')
else :
print('Runoob 不在集合中')

set可以进行集合运算

a = set('abracadabra')
b = set('alacazam')

print(a)

print(a - b) # a 和 b 的差集

print(a | b) # a 和 b 的并集

print(a & b) # a 和 b 的交集

print(a ^ b) # a 和 b 中不同时存在的元素

- {'Zhihu', 'Baidu', 'Taobao', 'Runoob', 'Google', 'Facebook'}

Runoob 在集合中
{'b', 'c', 'a', 'r', 'd'}
{'r', 'b', 'd'}
{'b', 'c', 'a', 'z', 'm', 'r', 'l', 'd'}
{'c', 'a'}

转换

转化.png

程序与用户交互

Python3.x 中 input() 函数接受一个标准输入数据,返回为 string 类型。

>>>a = input("input:")

input:123 # 输入整数

type(a)
<class 'str'> # 字符串
a = input("input:")
input:runoob # 正确,字符串表达式
type(a)
<class 'str'> # 字符串

格式化输出

什么是格式化输出?

把一段字符串里面的某些内容替换掉之后再输出,就是格式化输出。

为什么要格式化输出?

我们经常会输出具有某种固定格式的内容,比如:'亲爱的xxx你好!你xxx月的话费是xxx,余额是xxx‘,我们需要做的就是将xxx替换为具体的内容。

  • res1= 'my name is %s, my age is %s'
    print(res1 % ('kevin', 10))

(3) 如何格式化输出?

需要先占位置:%s %d # %s占位可以给任意的数据类型占位,
%s占位可以给任意的数据类型占位,
%d:它只能够给数字占位,不能给其他数据类型占位置

标签:输出,runoob,Python,元素,数据类型,列表,字符串,print
From: https://www.cnblogs.com/zhangfanshixiaobai/p/17657746.html

相关文章

  • 无涯教程-Python - 模块语句
    模块使您可以逻辑地组织Python代码。将相关代码分组到一个模块中可以使代码更易于理解和使用。名为aname的模块的Python代码通常位于名为aname.py的文件中。这是一个简单模块support.py的示例defprint_func(par):print"Hello:",parreturnImport语句您可......
  • centos7实现开机自启动Python脚本
    在Linux系统中,你可以使用不同的方法来实现开机自启动Python脚本和确保守护进程不挂掉。以下是一些常用的方法:1.开机自启动Python脚本:使用rc.local文件(适用于一些旧的系统):编辑/etc/rc.local文件,将你希望在系统启动时运行的命令或脚本添加到文件中。确保给脚本提供正确的路径。......
  • Python的占位——pass
    pass:常用于代码占位a=10ifa>100:pass当设计代码时,有些条件或代码还没有想好要如何处理,先用pass做占位,后续可以回来继续写。如果不写pass则会报错,因为代码不完整。......
  • Python——for循环
    字符串是可迭代的for循环:  for变量in可迭代的东西:    代码for循环把可迭代的东西中的每一项内容拿出来.挨个的赋值给变量.每一次赋值都要执行一次循环体(代码)s="你好啊,我叫赛利亚"forcins:print("取值:",c)输出结果是列表、元组、字典......
  • python将word文档转为pdf
    用python处理word文档,将word文档转换为pdf文档,可以使用docx2pdf模块。使用pip安装即可。关键代码如下:fromdocx2pdfimportconvertconvert("需要转换的word文档","生成的pdf文档")如果需要批量进行转换的话,最好是每一个后面加点延时,并做好异常处理。......
  • Python入门第四天
    今日内容概要字符串——列表——字典——元组——集合——布尔——与用户交互——格式化输出数据类型之字符串(str)作用:用来记录人的名字,家庭住址,性别等描述性质的状态定义: 方式一: username='kevin'#单引号      方式二:username="kevin"#双引号方式......
  • 引用数据类型的坑
    Integer2!= Integer2巨坑 最近遇到一个奇怪的问题,存到user中的某个key的数据类型变了下面这段代码,本来是图方便获取了map,然后将list转成string,然后put回到这个map,然后使用这个map却不成想,类型也跟着变了。 这就是引用类型使用的风险 importjava.util.ArrayLis......
  • python画图
    python画折线图为了刻画自变量和因变量的关系,通常将二者可视化出来。折线图是比较好的方法。主要的关键点是将x轴和y轴坐标搞出来代码:importmatplotlib.pyplotaspltx=[]y1=[]y2=[]y3=[]y4=[]hr_den_max=res['HR_density'].max()......
  • python实现RPC(远程过程调用)
    python实现RPC(远程过程调用)#远程过程调用-1借助于rabbitmq可以跨语言-2SimpleXMLRPCServer内置的-3zerorpc-4grpc可以跨语言1.1SimpleXMLRPCServer自带的###服务端fromxmlrpc.serverimportSimpleXMLRPCServer#通信使用xml格式classRPCServer(object):......
  • Python的循环语句2——break和continue
    whileTrue:content=input("请输入你要发送的内容(q结束):")print("发送内容:",content)这样的代码会无限循环因此我们需要使用break字段让循环立即停止添加一个判断,如果输入q,即可结束循环跳出whileTrue:content=input("请输入你要发送的内容(q结束):")......