0
点赞
收藏
分享

微信扫一扫

Python中的数字类型与字符串类型;转义字符与原字符

张宏涛心理 2022-04-14 阅读 54
python
数据类型分类
区别于其他语言
  • 在Python中不需要事先声明数据类型,直接对变量赋值。
相关操作
  • Python可以同时为多个变量赋值,如a, b = 1, 2;
  • 一个变量可以通过赋值指向不同类型的对象;
  • 数值的除法(/)总是返回一个浮点数(print(2/4)输出0.5),要获取整数使用//操作符;
  • 在混合计算时,Python会把整型转换成为浮点数;
  • del语句可删除定义的对象,如:del a,b;
  • 判断对象类型:
    • 可通过type()函数查询变量所指的对象类型;
    • 可通过isinstance()函数来判断变量所指的对象类型:
      • 举例:
        a = 111
        isinstance(a, int)
        
        输出结果为:
        True
        
    • 区别:type()不会认为子类是一种父类类型;isinstance()会认为子类是一种父类类型。

数字类型

  • 整型(int,integer)
    • Python3中只有一种整数类型int,表示为长整型,没有Python2中的long;

    • 可以表示正数、负数和零;

    • 进制:

      • 默认使用十进制;
      • 使用起始标记后输出时转化为十进制;
      进制起始基本数
      二进制0b0~9
      八进制0o0~7
      十六进制0x0~9,A~F
  • 浮点型(float)
    • 组成:整数部分+小数部分;
    • 储存不精确:
      • 使用浮点数计算时,可能会出现小数位不确定的情况;
        print (1.1+2.2)
        print (1.1+2.1)
        
        两次结果可能不同,第一次3.3000003,第二次3.2
      • 解决方案:导入模块decimal;
        from decimal import Decimal
        print (Decimal("1.1")+Decimal("2.2"))
        
        结果为3.3
  • 布尔型(bool,Boolean)
    • 用来表示真或者假的值;
    • 区别于其他语言:Python3 中,bool 是 int 的子类,True 和 False 可以和数字相加, True==1,False==0 会返回 True,但可以通过 is 来判断类型;
      • 举例:
        print(1 == True)
        
        输出结果为:
        True
        
        print(1 is True)
        
        输出结果为:
        False
        
    • 可转化为整数;
      print(True+1)
      
      结果为2
  • 复数型(complex)
    • 复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点。

字符串类型

  • 用单引号 ’ 、双引号 "或者三引号’''定义;
    • 用单双引号定义的字符串必须在同一行;
    • 用三引号定义的字符串可以分布在连续的多行;
  • 使用反斜杠 \ 转义特殊字符(即转义字符)或者用作续行符;
  • 没有单独的字符类型,一个字符就是长度为1的字符串;
  • 区别于其他语言,Python语言中字符串不能被改变,比如对某个索引位置赋值,会导致错误。
  • 字符串的截取的语法格式如下:
    变量[头下标:尾下标]
    
    索引值以 0 为开始值,向后递增1;-1 为从末尾的开始位置,向前递减1。
  • 加号 + 是字符串的连接符;
  • 星号 * 表示复制当前字符串,与之结合的数字为复制的次数。

转义字符

定义:

反斜杠+想要实现的转义功能首字母。

用途(为什么需要转义字符):
  • 当字符串中包含反斜杠、单引号和双引号等有特殊用途的字符时,必须使用转义字符对这些字符进行转义(转换一个含义),举例:
    • 反斜杠//
      print('http:\\www.baidu.com')
      
      输出结果为:
      http:\www.baidu.com
      
    • 单引号/’
    • 双引号/"
  • 当字符串中包含回车、换行、水平制表符或退格等无法直接表示的特殊字符时,也可以使用转义字符。举例:
    • 换行/n (newline)
      print('Hello\nworld!')
      
      输出结果为:
      Hello
      world!
      
    • 回车/r (return),会使后面的内容覆盖前面的内容;
      print('Hello\rworld!')
      
      输出结果为:
      world!
      
    • 水平制表符/t (tab),输出结果为占据下一个制表位(四个空格)剩余位置的间隔;
      print('Hello\tworld!')
      
      输出结果为:
      Hello   world!//中间实际上只有三个空格的位置
      
    • 退格/b (backspace),退一个格继续输出
      print('Hello\bworld!')
      
      输出结果为:
      Hellworld!
      

原字符

  • 定义:不希望字符串中的转义字符生效时,使用原字符;
  • 操作:在字符串前加上“r”或“R”;
  • 注意:使用原字符时,后接字符串的最后一位不能为反斜线,连续两(偶数)个反斜杠可以;
  • 举例:
    print(r'Hello\nworld!')
    
    输出结果为:
    Hello\nworld!
    
举报

相关推荐

0 条评论