zoukankan      html  css  js  c++  java
  • python中的数据类型

    基础类型

    • 数值型可以分为:
      • 整型(int): python3中只有int一种,可以表示整数,例如:10,-5,10000
      • 浮点型(float): 表示带小数点的实数,有两种表示法:
        • 小数表示: 1.9 .23
        • 科学计数法: 用e来表示10的指数,1e2就代表了100,注意e前面必须有数值,e后面必须为整数
      • 复数(complex):表示数学上的无理数,形如:a+bj
    • 布尔型(bool):表示事务的两种状态,男女、阴晴、亮暗等,它只有两个值:True,False
    • None:表示空对象,一般用于判断,不同于0和空字符
    • 字符串(str):在python中,可以使用字符串表示文本
      • 字符串的表示
        # 用单引号表示: 'hello'
        # 用双引号表示:"我用python"
        # 用3个单引号表示:可以表示多行文本,例如:
        '''伟大

        祖国
        '''
        # 用3个双引号表示:可以表示多行文本,例如:
        """生死看淡,
        不服就干"""
      • 字符串编码:计算机只能识别二进制,那么字符串如何存储到计算机里呢
        计算机不能直接存储字符串,但我们可以将字符编码,例如用65表示大写字符A,66表示大写字符B....等这种表示方式就是美国类的ASCII码,只能表示127个字符,但对于美国人来说已经足够了。一但能用整数表示字符,我们可以很方便的把整数用二进制表示,那么字符串也就和容易存储到计算机了。
        但还有很多其他国家的语言是不能用ASCII表示的,所有ISO组织就推出了unicode码,用来表示任何一种语言的字符,unicode码也称之为万国码,通用码,可以表示任何一种语言的任何一个字符。unicdoe码有多中表示方式,例如:utf-8、utf-16、utf-32等。一般使用较多的是utf-8,utf-8是一种变长的编码,表示一个字符可能用一个字节,也可能是三个字节
        中文常用编码一般用GBK编码,用2个字节表示一个汉字
      • 转义字符:有些特殊字符无法从键盘输入,可以使用转义字符表示,另外,无论是单引号、双引号还是三引号字都叫字符串界定符,也就是说用引号引起来的才是字符串,那么如果字符串中包含了引号该怎么表示呢?这个时候我们就要使用转义字符表示,把引号转义成普通字符。常见的转义字符

    类型判断

    我们可以使用type和isinstance来测试和判断数据类

    #type用法:
      type(obj)
      功能:返回obj的数据类型
      参数:obj是你要测试变量或数值
      示例:
        age = 10
        name = 'hello'
        print(type(name),type(age))
        
        #判断变量是否是指定类型
        if type(age) is int:
           print('是')
        else:
           print('否')
    
    #isinstance用法:
      isinstance(obj,typename)
      功能:判断obj是否是指定类型,是返回True,否返回False
      参数: objobj是你要判断的变量或数值
            typename是指定数据类型,可以是int,float,str等。也可是一个
                     类型的元组,例如:(int,float)
      示例:
        age = 10
    	name = 'hello'	
    	print(isinstance(age,int))
    	print(isinstance(name,(str,int)) #只要name是str或int的一种就返回True
    	
    	if isinstance(age,int):
    	    print('是')
    	else:
    	    print('否')
    	    
    #type和isinstance的区别
    type一般用于类型显示,isinstance一般用于类型判断
    type也可以判断类型,但无法判断子类对象是父类的一种,isinstance可以判断子类对象是父类的一种
    class A:
        pass
    
    class B(A):
        pass
    
    objA = A()
    objB = B()
    
    #输出否
    if type(objB) is A:
        print('是')
    else:
        print('否')
        
    print(isinstance(objB,A))  #True
    
    

    结论:优先使用isinstance

  • 相关阅读:
    怎样判断数组类型
    VS2017不能生成Database Unit Test项目
    Windows Server 远程桌面报错:No Remote Desktop License Servers Available
    TFS2018 获取所有Build变量及变量值
    C# 读写bat文件
    【PowerShell 学习系列】-- 删除Win10自带应用
    Win10
    【TFS】TFS2015链接TFS出现TF31002/TF400324问题解决方案
    【SQL Server 学习系列】-- 获取字符串中出现某字符的次数及字符某次出现的下标
    【.Net 学习系列】-- 利用Aspose转换Excel为PDF文件
  • 原文地址:https://www.cnblogs.com/landmark/p/12609449.html
Copyright © 2011-2022 走看看