python 基本数据类型

Python 基本数据类型

Python 中的变量不需要声明,但每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建

等号(=)运算符左边是一个变量名,等号(=)运算符右边是存储在变量中的值

counter = 100          # 整型变量                                                                                                         

miles   = 1000.0       # 浮点型变量                                                                                                    

name    = "runoob"     # 字符串                                                                                                          

print (counter)                                                                                                                                    

print (miles)                                                                                                                                        

print (name)                                                                                                                                                         

多个变量赋值

Python允许你同时为多个变量赋值

多个变量被赋予相同的数值,也可以为多个对象指定多个变量

a = b = c = 1                                                                                                                                       

a, b, c = 1, 2, "runoob"                                                                                                                  

标准数据类型

Number(数字) String(字符串) bool(布尔类型) List(列表)

Tuple(元组)  Set(集合) Dictionary(字典)

不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组)

可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)

字节数组类型(bytes)

Number(数字)

int、float、bool、complex(复数)

type() 函数可以用来查询变量所指的对象类型

a, b, c, d = 20, 5.5, True, 4+3j                                                                               

print(type(a), type(b), type(c), type(d))                                

isinstance (a,type)函数可以用来查询变量是否是指定的对象类型

a = 111                                                                    

print(isinstance(a, int))

    

bool 是int的子类,True和 False可以和数字相加,True==1、False==0会返回True,但可以通过is来判断类型

print(issubclass(bool, int))                                                                                

print(True==1)                                                                                                               

print(False==0)                                                                                                                  

print(True+1)                                                                                                           

print(False+1)                                                                                                                

print(1 is True)                                                                                                          

print(0 is False)                                                                 

可以使用del语句删除一些对象引用

del var1[,var2[,var3[....,varN]]]                                             

可以通过使用del语句删除单个或多个对象

del var                                                                        

del var_a, var_b                                                            

数值运算

print(5 + 4)  # 加法                                                                                                    

print(4.3 - 2) # 减法                                                                                                 

print(3 * 7)  # 乘法                                                                                               

print(2 / 4)  # 除法,得到一个浮点数                                                     

print(2 // 4) # 除法,得到一个整数                                                                        

print(17 % 3) # 取余                                                                                                  

print(2 ** 5) # 乘方                      

                                 

  1. Python可以同时为多个变量赋值,如a, b = 1, 2
  2. 一个变量可以通过赋值指向不同类型的对象
  3. 数值的除法包含两个运算符:/返回一个浮点数,//返回一个整数
  4. 在混合计算时,Python会把整型转换成为浮点数

String(字符串)

Python中的字符串用单引号'或双引号"括起来,同时使用反斜杠\转义特殊字符

索引值以 0 为开始值,-1 为从末尾的开始位置

加号+是字符串的连接符,星号*表示复制当前字符串,与之结合的数字为复制的次数

str = 'Runoob'  # 定义一个字符串变量                                                   

print(str)           # 打印整个字符串                                                    

print(str[0:-1])     # 打印字符串第一个到倒数第二个字符(不包含倒数第一个字符)                                                                  

print(str[0])        # 打印字符串的第一个字符                                      

print(str[2:5])      # 打印字符串第三到第五个字符(包含第五个字符)                      

print(str[2:])       # 打印字符串从第三个字符开始到末尾                        

print(str * 2)       # 打印字符串两次                                         

print(str + "TEST")  # 打印字符串和"TEST"拼接在一起      

                

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

print('Ru\noob')                                                                                               

print(r'Ru\noob')                                                               

反斜杠(\)可以作为续行符,表示下一行是上一行的延续。也可以使用 """...""" 或者 '''...''' 跨越多行

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

word = 'Python'                                                                     

print(word[0], word[5])                                                                              

print(word[-1], word[-6])                                                     

  1. 反斜杠可以用来转义,使用r可以让反斜杠不发生转义
  2. 字符串可以用+运算符连接在一起,用*运算符重复
  3. Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始
  4. Python中的字符串不能改变

bool(布尔类型)

布尔类型即 True 或 False

在 Python 中,True 和 False 都是关键字,表示布尔值

可以使用bool()函数将其他类型的值转换为布尔值

在 Python 中,所有非零的数字和非空的字符串、列表、元组等数据类型都被视为 True,只有 0、空字符串、空列表、空元组等被视为 False

# 布尔类型的值和类型                                                             

a = True                                                                      

b = False                                                                  

print(type(a))  # <class 'bool'>                                           

print(type(b))  # <class 'bool'>                                                                                                    

# 布尔类型的整数表现                                                              

print(int(True))  # 1                                                           

print(int(False))  # 0                                                                                                           

# 使用 bool() 函数进行转换                                                

print(bool(0))  # False                                                   

print(bool(42))  # True                                                   

print(bool(''))  # False                                                    

print(bool('Python'))  # True                                                    

print(bool([]))  # False                                                    

print(bool([1, 2, 3]))  # True                                                                                                 

# 布尔逻辑运算                                                                    

print(True and False)  # False                                              

print(True or False)  # True                                                  

print(not True)  # False                                                                                     

# 布尔比较运算                                                              

print(5 > 3)  # True                                                        

print(2 == 2)  # True                                                       

print(7 < 4)  # False                                                                                       

# 布尔值在控制流中的应用                                                  

if True:                                                                      

    print("This will always print")                     

if not False:                                                                  

    print("This will also always print")                                                       

x = 10                                                                

if x:                                                                     

    print("x is non-zero and thus True in a boolean context")                

List(列表)

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

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

加号+是列表连接运算符,星号*是重复操作

列表中的元素是可以改变的

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)    # 打印tinylist列表两次                             

print (list + tinylist)  # 打印两个列表拼接在一起的结果                   

a = [1, 2, 3, 4, 5, 6]                                                      

a[0] = 9                                                              

a[2:5] = [13, 14, 15]                                                                       

print(a)                                                                      

a[2:5] = []   # 将对应的元素值设置为 []                                      

print(a)                                                                           

  1. 列表写在方括号之间,元素用逗号隔开
  2. 和字符串一样,列表可以被索引和切片
  3. 列表可以使用+操作符进行拼接
  4. 列表中的元素是可以改变的

Python 列表截取可以接收第三个参数,参数作用是截取的步长

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)                                                                       

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) # 连接元组                                        

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

tup1 = ()    # 空元组                                                            

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

  1. 与字符串一样,元组的元素不能修改

     2.元组也可以被索引和切片,方法一样

     3.注意构造包含 0 或 1 个元素的元组的特殊语法规则。

     4.元组也可以使用 + 操作符进行拼接。

Set(集合)

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

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

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

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

sites = {'Google', 'Taobao', 'Runoob', 'Facebook', 'Zhihu', 'Baidu'}                                                     

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 中不同时存在的元素                                

Dictionary(字典)

字典是无序的对象集合,元素是通过键来存取的

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

键(key)必须使用不可变类型,键(key)必须是唯一的

dict = {}                                                                  

dict['one'] = "1 - 菜鸟教程"                                                 

dict[2]     = "2 - 菜鸟工具"                                                                                           

tinydict = {'name': 'runoob','code':1, 'site': 'www.runoob.com'}                         

print (dict['one'])       # 输出键为 'one' 的值                              

print (dict[2])           # 输出键为 2 的值                                     

print (tinydict)          # 输出完整的字典                                

print (tinydict.keys())   # 输出所有键                                        

print (tinydict.values()) # 输出所有值                                      

构造函数 dict() 可以直接从键值对序列中构建字典

print(dict([('Runoob', 1), ('Google', 2), ('Taobao', 3)]))                                        

print({x: x**2 for x in (2, 4, 6)})                                                        

print(dict(Runoob=1, Google=2, Taobao=3))                                 

  1. 字典是一种映射类型,它的元素是键值对
  2. 字典的关键字必须为不可变类型,且不能重复
  3. 创建空字典使用{ }

bytes 类型

bytes 类型表示的是不可变的二进制序列

bytes() 函数的第一个参数是要转换的对象,第二个参数是编码方式,如果省略第二个参数,则默认使用 UTF-8 编码

x = b"hello"                                                                        

y = x[1:3]  # 切片操作,得到 b"el"                                          

z = x + b"world"  # 拼接操作,得到 b"helloworld"                           

print(z)                                                                   

ord() 函数用于将字符转换为相应的整数值

x = b"hello"                                                                 

if x[0] == ord("h"):                                                     

    print("The first element is 'h'")                                              

Python数据类型转换

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值