python整数,浮点数-字符串-布尔值-数据类型

整数

  • python中所有的整数都是int型
    例:a = 10 b = 20
    python中的整数的大小没有限制,可以是一个无限大的整数
    例 c = 10000000000000000000000000000000000000000000000000
    如果数字长度过大,可以使用下划线作为分隔符
    c = 123_456_789
  • python中一开始默认输出的整数都是10进制的,所以在定义变量的时候如果定义的是整数一定不能以0开头
    二进制 0b开头
    例 c= 0b10
    八进制 0o开头
    例 c= 0o10
    十六进制 0x开头	
    例 c = ox10
    也可以通过运算符来对数字进行运算,并且可以保证整数运算的精确
    例 c = 100
        c = c+3
        print (c) 输出结果是 103

浮点数

  • 在python中所有的小数都是 float类型
    例 c = 1.23 
    对浮点型进行运算时,可能会得到一个不精确的结果,可以通过模块来计算

字符串

  • 字符串用来表示一段文本信息,字符串是程序中使用最多的数据类型

  • 在python中字符创需要用引号引起来

    例:s = hello
    错误例子: s = abc 
    这里如果abc这个表达式没有定义变量的话,就会报错,因为python不知道abc是谁,可以加“abc”或者定义abc这个表达式
    相同的引号不能嵌套,
  • 长字符串

    ''' 和 """
  • 单引号和双引号不能跨行使用,所以长字符串就可以多行写

  • 三重引号可以换行,并且会保留字符串的格式

    例 :
    a= '
        123
        123
        123
       ' 
    用单引号这样写就会报错
       
    a= ''' 
        123
    	123
    	123
    	''' 
    这样写就没问题,而且是换行的

转义字符

  • \ 是转义字符 通过转义字符可以在字符串中使用一些特殊的内容
\ " 就把这个引号表示为引号,因为在python 引号是一个特殊字符
\ ' 同上
\t 表示制表符 在文字前面输入打印后相当于一个tab键
\n 表示换行符 在文字之间输入 \n之后的文字就会另起一行
\\ 就表示 \ 这个字符
\uxxxx 表示Unicode编码 这个可以输入一些比较奇特的字符

格式化字符串

  • 字符串之间也可以进行加法运算,

  • 如果将两个字符串进行相加,则会自动将两个字符串拼接为一个

    例:a = 'abc' + 'haha' + 'lmk' 输出结果就是 abc haha lmk
  • 字符串不能和其他类型进行加法运算,如果做了,会出现异常

      打印 a = abc 的方法
    1. print ('a =' ,a)
    2. print ('a =' +a)
    3. print ('a = %s' %a)
  • 第三个运用的是占位符,常见的三个有

    %s 在字符串中表示任意字符
    %d 整数的占位符
    %f 浮点数的占位符
  • 运用方法

    a = 'hello'
    print ('a = %s' %a) 
    # 输出结果是 a = hello
    a = hello %3s 
    # 这个是最小字符是三个,如果小于三个字符则会用空格补充
    a = hello %3.5s 
    # 这个是 字符串长度限制为 3-5之间 超过五个后就不显示后面的,只显示 前5个字符
    	
    %f 
    a = 'hello' %2.f  %123.456 
    # 这个是 只留下小数点后两位
    %d 
    a = ‘hello’%d %123.43566 
    # 这个是只去整数部分,不留小数点
  • 格式化字符串可以通过在字符串前添加一个f来创建格式化字符串

  • 再格式化字符串中可以直接嵌入变量

    
    例  
    a =1
       b =2
       e = 5
       c = f'hello {a} {b}'
    print (c) 
    # 输出结果就是 hello 1 2
    # 也可以在print里用
    # print (f'lmk {e}') 输出结果 是 lmk 5
  • 字符串的复制

    a= abc	
    a = abc * 20 
    pirnt(a) 
    # 就输出20个abc 这个就是字符串的复制

布尔值(bool)

  • 布尔值主要用来做逻辑判断
  • 布尔值一共有两个 True和false
  • true表示真,false表示假
    a = true
    b = false
    pirnt (a) 输出 true
  • 布尔值实际上属于整形, true相当于1 false 相当于0

None

  • None 是空值
  • None专门用来表示不存在的值 (不常用) 可以给变量设置None、
    c = None
    pirnt (c) 
    # 什么也不输出

数据类型检查

* type () 函数可以检查数据类型
* 该函数会将检查结果作为返回值返回,可以通过 print 和变量来输出和显示返回值
a = 123
b = '123'
print (type(a)) 
# 检查数据类型为 int 整数
print (type(b)) 
# 检查数据类型为 str 字符串	

类型检查

  • 对象(boject)

  • python是一门面向对象的语言,

  • 在python中一切皆为对象

    • 程序运行当中,所有的数据都是储存在内存中然后再运行的
    • 对象就是内存中专门来存储指定数据的一块区域
    • 对象实际上就是一个容器,专门来存储数据的
    • 像之前学习的数值,字符串,布尔值,None都是对象
  • 对象的结构

    • 每个对象都是要保存三种数据

      • id (标识)
        id用来标识对象的唯一性,每一个对象都有唯一的id
        对象的id就相当于人的身份证号
        可以通过id()函数来查看对象的id
        id是有python解释器自动生成的,则在python中id是永远不能改变的

      • type (类型)
        类型用来标识当前对象所属的类型
        通过type()函数来查看对象的类型
        python是一门强类型的语言,对象一旦创建类型便不能改变

      -value(值)
      值就是对象中储存的具体数据
      对于有些对象,值是可以改变的
      对象分成两大类,

    • 可变对象 和 不可变对象

    • 不可变对象的值是不能改变的,之前学习的对象都是不可变对象

    • 变量和对象

    • 对象没有直接储存在变量中,在python中,变量更像是给一个对象起了一个别名

    • 变量中存储的不是对象的值,而是对象的id(内存地址)

    • 当我们使用变量时,实际上就是在通过对象的id在查找对象

    • 变量保存的对象,只有在为变量重新赋值时才会改变

    • 变量和变量之间是相互独立的,修改一个变量不会影响另一个变量

类型转换

  • 所谓类型转换,将一个对象转换为其他对象

  • 类型转换不是改变对象本身的类型,而是讲对象的值转换为新的对象

  • 类型转换的四个函数

  • int() 函数

    • 可以用来将其他的对象转换为整型
    • 规则:
      • 布尔值 true –> 1 false –> 0
      • 浮点数 直接取整,省略小数点后的内容
      • 字符串 合法的数字字符串,直接转换为对应的数字,(必须是整数,小数不行),如果不是一个合法的字符串,则报错,ValueError:invalid literal for int() with base
      • 对于其他不可转为整型的对象,直接抛出异常 ValueError
        a = true
        调用int()来将a转换为整型
        int() 函数不会对原来的变量产生影响,它是对象转换为指定的类型并将其作为返回值返回
        如果希望修改原来的变量,则需要对变量进行重新赋值
        a = int(a) 这样就覆盖了原来的变量了
  • folat() 函数

    • 和int()基本一致,不同的是它会将对象转换为浮点数,
  • str()

    • 可以将对象转换为字符串
  • boor()

    • 可以将对象转换为布尔值,任何对象都可以转换为布尔值
      • 规则
        • 对于所有便是空性对象的值都追转换为false 其余的转换为true
        • 空性的值 0 None '' 都是空性的值,就是值是空的,什么也没有才会返回false,负数返回true,只要是有值就返回true

本博客所有文章是以学习为目的,如果有不对的地方可以一起交流沟通共同学习 邮箱:1248287831@qq.com!