回顾

  1. pycharm简单使用

  2. while循环

    • 结构

    • pass

    • while实现打印1-2+3-4+……+99

  3. 格式化输出:针对str,让字符串中某些位置变为动态可传入的

    • % s str d digist i int
    • %%第二个%转义
  4. 编码初识(二进制和文字对应关系)

    1. ASCLL
    2. GBK
    3. Unicode
    4. Utf-8

今天内容大纲

  1. 基础数据类型总览

    • 10203 13 333 2041 **int **进行+-*/
    • '今天吃了吗' **str **存储少量数据
    • True False **bool **判断真假
    • [12,True,'汤达人',[1,2,3]] list 列表 存储大量数据
    • (12,True,'汤达人',[1,2,3]) tuple 元组 存储大量数据,内部不能改变
    • {'name':'汤达人'} dict 字典存储大量关联型的数据,查询速度快
    • set 集合,求交集并集差集等。
  2. int

    • pycharm中ctrl+左键点击,可以查看类方法

    • 主要用于计算

    • 不同进制的转换。十进制、二进制

      '''二进制转换成十进制
      
      0001 1010 ----------->?26
      '''
      b=1*2**4+1*2**3+0*2**2+1*2**1+0*2**0
      print(b) #26

      '''十进制转换成二进制
      42------->?
      '''
      i=5
      print(i.bit_length())#有效二进制长度 #3
  3. bool

    • bool<--------->int 0,1
  4. str

    • 索引,切片

      s1='python全栈'
      #从左至右有顺序、下标索引012345
      s2=s1[0]
      print(s2,type(s2)) #p <class 'str'> s3=s1[-1] #从后往前第一个
      print(s3) #栈 #按照切片取值
      s4=s1[0:6] ##取六个数,顾头不顾腚
      print(s4) #python s5=s1[6:]##取到最后
      print(s5) #全栈 s6=s1[0:5:2]#第三个数是步长、0可省略
      print(s6) #pto s7=s1[-1:-5:-1]#倒序取必须有一个倒序步长,但是不加不报错
      print(s7) #栈全no s8=s1[::-1]
      print(s8) #栈全nohtyp
    • 常用操作方法

      • upper()、lower()
      #字符串常用操作方法
      #不会对原字符串操作,会产生新字符串
      s='TangDaRen'
      s1=s.upper()#全变大写
      s2=s.lower()#全变小写
      print(s1)
      #应用:验证码不区分大小写
      username=input('用户名')
      password=input('密码')
      code='QweA'
      print(code)
      your_code=input('验证码,不区分大小写')
      if your_code.upper()==code.upper():
      if username=='汤达人' and password=='123':
      print('登录成功')
      else:
      print('用户名密码错误')
      else:
      print('验证码错误')
      • startswith()、endswith()
      #starswith endswith
      #返回bool值
      s='TangDaRen'
      print(s.startswith('Ta')) #True
      print(s.startswith('TangDaRen')) #True
      print(s.startswith('a')) #False
      print(s.startswith('a',1,3)) #True(1~3是不是以a开头)
      • replace() #替换

      • #replase
        msg='Leo is a good boy,Leo,Leo'
        msg1=msg.replace('Leo','Henri')#默认全部替换
        msg2=msg.replace('Leo','Henri',2)#替换两个
        print(msg1)#Henri is a good boy,Henri,Henri
        print(msg2)#Henri is a good boy,Henri,Leo
      • strip() #去除开头结尾的空白

      #strip:开头结尾空格、制表符\t、换行符\n的去除
      msg=' Leo is a good boy,Leo,Leo'
      msg3=msg.strip()
      print(msg3)#Leo is a good boy,Leo,Leo
      #去除指定字符
      msg4=msg.strip('Leo is')
      print(msg4)# a good boy,Leo,
      • split() 分割:默认按照空格分割,返回一个list

        • 可以实现str-------->list
      #split
      msg='Leo is a good boy,Leo,Leo'
      msg5=msg.split()
      print(msg5) #['Leo', 'is', 'a', 'good', 'boy,Leo,Leo']
      #指定分隔符
      msg='Leo is a good boy,Leo,Leo'
      msg6=msg.split(',')
      print(msg6)#['Leo is a good boy', 'Leo', 'Leo']
      • join() 非常好用

        • 可以实现list-------->str
        #join
        s1='Leo'
        s2='+'.join(s1)
        print(s2,type(s2)) #L+e+o <class 'str'>
        l1=['Leo is a good boy', 'Leo', 'Leo']
        s3=','.join(l1)
        print(s3)#Leo is a good boy,Leo,Leo
      • count() 数出字符串出现次数

      • format():格式化输出

        #format:格式化输出
        #第一种用法:
        msg7='我叫{}今年{}'.format('Henri','23')
        print(msg7)#我叫Henri今年23
        #第二种用法:带索引,可重复用
        msg8='我叫{0}今年{1}性别{2},我依然叫{0}'.format('Henri','23','男')
        print(msg8)#我叫Henri今年23性别男,我依然叫Henri
        #第三种用法:带关键字索引,可调顺序
        msg9='我叫{name}今年{age}性别{sex},我依然叫{name}'.format(age='23',sex='男',name='Henri')
        print(msg9)#我叫Henri今年23性别男,我依然叫Henri
      • is系列

        ### is系列
        name='tangdaren123'
        print(name.isalnum())#字符串由字母和数字组成True
        print(name.isalpha())#字符串只由字母组成False
        print(name.isdecimal())#字符串只由十进制组成False
        #应用:购物车
        s1=input('请输入您的金额:')
        if s1.isdecimal():
        print(int(s1))
        else:
        print('输入有误')
  5. for循环

  • in

    • s1='天津大学edu'
      print('天'in s1)#True
      print('天津'in s1)#True
      print('天津edu'in s1)#False
      print('天津edu'not in s1)#True
  • len():获取字符串元素个数

  • for 变量 in interable(可迭代变量):

    …………………………

    s2='天津大学最牛的学生'
    for i in s2:
    print(i)
    '''
    天 s2[0]
    津 s2[1]
    大 s2[2]
    学 …………





    '''
    s2='天津大学最牛的学生'
    for i in s2:
    print(i)
    if i=='的':
    break
    '''
    天 s2[0]
    津 s2[1]
    大 s2[2]
    学 …………



    '''

python03day的更多相关文章

随机推荐

  1. leetcode1261在受污染的二叉树中查找元素

    题目 一颗二叉树,树根值为0,父节点为x,则左子值为2x+1,右子为2x+2.现在只有树的结构,所有值都变为-1被污染了.求污染前是否存在某个值. 构建一次树,查询会调用多次. 题解 这道题还是比较简 ...

  2. 【LeetCode】831. Masking Personal Information 解题报告(Python)

    [LeetCode]831. Masking Personal Information 解题报告(Python) 标签(空格分隔): LeetCode 作者: 负雪明烛 id: fuxuemingzh ...

  3. bugku的一道XFF转发代理服务器题 “本地服务器”

    X-Forwarded-For requests包内构造方式: X-Forwarded-For: client1, proxy1, proxy2

  4. 第九个知识点:香农(Shannon)定义的熵和信息是什么?

    第九个知识点:香农(Shannon)定义的熵和信息是什么 这是计算机理论的最后一篇.我们讨论信息理论的基础概念,什么是香农定义的熵和信息. 信息论在1948年被Claude E.Shannon建立.信 ...

  5. [数学]高数部分-Part VI 重积分

    Part VI 重积分 回到总目录 Part VI 重积分 二重积分的普通对称性 二重积分的轮换对称性(直角坐标系下) 二重积分直角坐标系下的积分方法 二重积分极坐标系下的积分方法 二重积分中值定理 ...

  6. .NET6: 三分钟搭建WPF三维应用

    要运行本文中的示例,请先安装Vistual Studio 2022,社区版就可以了. 1 创建项目 选择创建WPF应用 给程序起一个酷酷的名字,选一个酷酷的位置: 选一下.NET6 2 配置项目 从n ...

  7. 【MySQL作业】SELECT 数据查询——美和易思模糊查询应用习题

    点击打开所使用到的数据库>>> 1.根据商品名关键字查找商品信息. 查询带"美"字的商品信息: SELECT * FROM goods WHERE goodsNa ...

  8. 【MySQL作业】avg 和 count 函数——美和易思聚合函数应用习题

    点击打开所使用到的数据库>>> 1.统计所有商品的平均单价.最高单价与平均单价之差.平均单价与最低单价之差. 最高单价与平均单价之差 = max(unitPrice)-avg(uni ...

  9. Ranger开源流水线docker化实践案例

    1.背景 开发部门决定在Apache Ranger开源社区贡献代码,目标是个人国内排名Top1,世界排名Top2,并且在已经成为Ranger项目的Committer情况下,争取成为Ranger项目的P ...

  10. 微服务探索之路01篇.net6.0项目本地win10系统docker到服务器liunx系统docker的贯通

    本文介绍从创建 net6.0 项目运行在 windows 开发环境的 docker 然后正式部署至 liunx 服务器. 1 windows10 安装 docker 下载docker-desktop ...