Day2:数据类型介绍及相关使用方法

Day2

链式赋值

链式赋值用于同一个对象支付给多个变量

x=y=3,即把3的内存地址赋值给变量x和y。

系列解包赋值

系列解包数据赋值给对应相同个数的变量(个数必须保持一致)

a,b,c = 4,5,6

通过系列解包赋值,实现变量的交换

a, b = 1, 2
a, b = b, a
print(a, b)

常量

python不支持常量,即没有语法规则限制改变一个常量的值。

MAX_SPEED = 120
MAX_SPEED = 140
# 实际上将变量的值指向了140的内存地址

最基本的数据类型介绍

  • 整型:integer-整数:1,2,350

    • python中,除10进制,还有其他三种进制:

      • 0b或者0B,二进制,0 1,逢二进一;

      • 0o或0O,八进制,0 1 2 3 4 5 6 7;

      • 0x或者0X,十六进制0 1 2 3 4 5 6 7 8 9 a b c d e f;

        print(0b10)  # 2
        print(0o10)  # 8
        print(0x10)  # 16
        
  • 浮点型:float-小数,3.14或科学计数法314E-2或者314e-2(314乘以10的负二次方),这些数字在内存中也是按照科学计数法存储。

    • 使用int()对浮点数进行类型转换,转化结果为整数,int(9.9)的结果为9;
    • 使用float()对其他类型转化成浮点数;
    • 整数和浮点数混合运算时,表达式结果自动转化成浮点数;
    • round(value)可以返回四舍五入的值;
    • 进行数据类型转换后,不改变原有的对象,而是在内存空间内创建新的对象;
  • 布尔型:bool-True(1)和False(0)

    • 使用int()堆布尔值进行类型转换,int(True),int(False);

    • 比较运算符

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Khkh5XiS-1593092453994)(C:\Users\z&y\AppData\Roaming\Typora\typora-user-images\image-20200625180304266.png)]

  • 逻辑运算符

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6AwxJUcx-1593092453997)(C:\Users\z&y\AppData\Roaming\Typora\typora-user-images\image-20200625181617368.png)]

    a = True
    b = False
    print(a or 30)  # True
    print(b or 30)  # False
    
  • 字符串型:string-由字符组成的序列:“new pants” ,‘大波浪’

    • 字符串属于不可变数据类型;

    • 创建字符串的方式: ''或""

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-H0d53OGy-1593092453998)(C:\Users\z&y\AppData\Roaming\Typora\typora-user-images\image-20200625185500173.png)]

    • python中允许空字符串的存在,长度为0;

    • 可以通过+将多个字符串拼接起来,例如:‘a’ + ‘b’ = ‘ab’

    • 转义字符

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QKWiGCjx-1593092454000)(C:\Users\z&y\AppData\Roaming\Typora\typora-user-images\image-20200625190942075.png)]

    • 不换行打印:

    print('a',end='')
    print('b',end='')
    print('c',end='')
    
    • str()可以将数据类型转为字符串

    • 字符串是不可变数据类型:

      a = 'megadeth'
      a[0] = 'h'
      #报错TypeError: 'str' object does not support item assignment
      
    • 可以通过replace进行替换,但整个过程中我们是创建了新的字符串对象,并指向了变量a,而不是修改了以前的字符串,内存图如下:

      a = 'Aetallic'
      a = a.replace('A', 'M')
      print(a)
      print(id(a))
      

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bu2pjtHF-1593092454001)(C:\Users\z&y\AppData\Roaming\Typora\typora-user-images\image-20200625194451501.png)]

    • 字符串的切片:标准格式为[起始偏移量:start,终止偏移量end:步长step],即便起始偏移量或终止偏移量不在范围内,也不会报错。

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-At9Neay3-1593092454003)(C:\Users\z&y\AppData\Roaming\Typora\typora-user-images\image-20200625195324835.png)]

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-emOWjpY7-1593092454003)(C:\Users\z&y\AppData\Roaming\Typora\typora-user-images\image-20200625195445724.png)]

    • 字符串的分割和合并

      • split():如果不指定分隔符,则默认使用空白符(换行符/空格/制表符)

        c = 'to be or not to be'
        print(c.split())  # ['to', 'be', 'or', 'not', 'to', 'be']
        print(c.split('be'))  # ['to ', ' or not to ', '']
        
      • join():用于将一些列字符串连接起来,推荐使用join函数,因为join函数在拼接字符串之前会计算所有字符串的长度,然后注意拷贝,仅新建一次对象,而通过+拼接字符串会产生新的字符串对象。

        d = ['你', '你', '你', '你要跳舞吗!']
        print('!'.join(d))
        
    • 字符串的驻留机制:

    • 字符串的常用查找方法:

      # 字符串的常用查找方法:
      a = 'adiadadjdadadoad编程daidjaio编程shiadhiaio编程'
      # 计算字符串长度
      print(len(a))
      # 是否以指定的字符串开头
      print(a.startswith("a"))
      # 是否以指定的字符串结尾
      print(a.endswith("编程"))
      # 显示第一次出现指定字符串的位置
      print(a.find('编程'))
      # 显示最后一次出现指定字符串的位置
      print(a.rfind("编程"))
      # 显示指定字符串出现了几次
      print(a.count("编程"))
      # 判断所有字符串是否全是字母或数字
      print(a.isalnum())
      
    • 去除收尾信息:strip()去除字符串首尾指定信息,参数为空,默认去除首尾空格。

      • lstrip():去除字符串左边指定信息;
      • rstrip():去除字符串右边指定信息;
    • 大小写转化:

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-N1nyAAQN-1593092454004)(C:\Users\z&y\AppData\Roaming\Typora\typora-user-images\image-20200625210942406.png)]

    • 格式排版:

      • center():居中

        a = "sxt"
        # 十个字符,"sxt"居中,其他位置由*补足
        print(a.center(10, "*"))
        
      • ljust():左对齐

      • rjust():右对齐

    • 格式化输出:

      a = "名字是:{0},年龄是:{1}"
      b = a.format("彭裤子", 40)
      print(b)
      
      a = "名字是:{name},年龄是:{age}"
      b = a.format(name = "彭裤子", age = 40)
      print(b)
      
      • 对齐与填充:# ^ < >分别是居中,左对齐,右对齐,后面带宽度:10,不足用*补足
      print("我是{0}, 我的外号是{1:*^10}".format("彭裤子", "王子"))
      # 我是彭裤子, 我的外号是****王子****
      
    • 数字格式化:

      print("我是{0},我的存款有{1:.2f}".format("尼达叶", 3000.4233))
      # 我是尼达叶,我的存款有3000.42
      

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UMC3iBh3-1593092454004)(C:\Users\z&y\AppData\Roaming\Typora\typora-user-images\image-20200625213902605.png)]

数字支持如下运算方式:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cPWQYbzs-1593092454005)(C:\Users\z&y\AppData\Roaming\Typora\typora-user-images\image-20200625090449652.png)]
在这里插入图片描述

divmod()函数:可同时得到商和余数

a = divmod(13, 3)
print(a)
#(4,1)

增强型赋值预算符号

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xtf8TR2X-1593092454006)(C:\Users\z&y\AppData\Roaming\Typora\typora-user-images\image-20200625171836326.png)]

时间的表示

计算机中时间的表示是从“1970年1月1日00:00:00”开始,以毫秒(1/1000秒)进行计算,我们也罢1970年这个时间刻成”unix时间点“。
在这里插入图片描述

time.time()获得当前时间

import time
t = time.time()
totalMinutes = t//60  # 使用整除
totalHours = totalMinutes//60
totalDays = totalHours//24

同一运算符

is比较内存地址,=比较value。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yLR7NkNr-1593092454006)(C:\Users\z&y\AppData\Roaming\Typora\typora-user-images\image-20200625172529670.png)]

  • 0
    点赞
  • 0
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

1152:从入门到脱发

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值