• Python之旅第二天(第一天补充部分、数据类型、运算逻辑、部分方法的引入、pycharm)


    今天其实是有点小忙的,但是干自己不喜欢事情的结果就是,要睡觉了都不知道自己在忙鸡毛,所以还是不继续想了,脑仁疼。回忆一下今天的学习内容,着实有点少,本大侠还没怎么过瘾呢。废话不多说。

    while补充两个重要的单词:

      continue:提前结束本次的while循环,重新验证while条件,开始下次循环

      break:直接跟本while循环说再见,结束循环

      所以昨天的限制输入三次机会的题目我可能写的太麻烦了,重新记录如下吧。

    a = 1
    name = "bab"
    mima = "mom"
    
    while a < 4:
        name_user = input("请输入用户名")
        mima_user = input("请输入密码")
        if name_user == name and mima_user == mima:
            print("欢迎进入你的世界")
            break
        else:
            print("请重新输入")
        a = a + 1
    
    if a == 4:
        print("三次机会已用完")
    else:
        pass

      这下子逻辑顺序貌似更顺一点了,事实证明,笨人总能找到解决办法,智商确实只是个buff,打怪还是得靠普攻和技能。

    关于计算机对照码的问题(集中于ASCII、utf-8、GBK、unicode)

      昨天看到python2运行print汉字的时候出现乱码的问题,一直没怎么想明白,下面为今后可能忘了的我介绍一下他们的存在

      ASCII:鹰酱最早用电脑,所以最早的电脑都是他们做的,1个字节对应所有,算下来就是256个不同形式的字母和乱七八糟的符号。

      GBK:作为种花家的传人,用2个字节表示一个汉字,从此电脑认识了种花家的字

      unicode:万国码,各国都有用电脑的需求,所以他们规定至少用16位二进制数对应,识别万物,但是对1个字节的ASCII来说有点浪费,于是下面这个家伙出场了。

      utf-8:短的用短的,长的的用长的,就是一个unicode的压缩版,但是他表示汉字的时候要3个字节。

      昨天用python2设置识别#-*- coding:utf-8 -*-之后,文字是按照3字节识别的,但是我们在用Windows时候是用的GBK模式储存,那么都存成1010101000.。。。。搞不清分段,自然就错了。

      废话说的果然多啊

    逻辑运算的问题(and、or、not)

      意思很容易理解,主要是运算的先后顺序问题,如果有括号,自然是先算括号里面的。

      但是如果:

    user = "alex"
    pwd = 123
    
    v = user=="alex" and pwd ==123 or 1==2 and pwd==12
    
    print(v)

      这个v是true还是false呢?

      原则是这样的,从左向右

      true 遇到 or 不走了,反正前面对的,后面不管是啥,结果就是true

      true 遇到 and 请继续算吧

      false遇到 or 请继续吧

      false遇到and 不走了,反正前面错了,后面对的也是个false

    接下来是数据类型:

      int、str、bool、list、tuple、dict

    部分方法的引入:

      关于int类型的:

      num = "0011"

      v = int ( num , base = 16)

      将num的str类型转换为int类型,具体按照几进制参考base,没写就默认十进制。

      age = 20

      r = age.bit_length()      这个数字用二进制表示至少需要几位

      关于str类型的:

      capitalize 首字母大写  casefold 任意国家的文字转为小写(不咋用)

      lower 转所有英文字母为小写

      center 设置宽度,并填充内容,同时将str居中

    test = "alex"
    v = test.centr(20,"*")

      得到的结果**********alex**********

      count(“  ”,num(start) , num2(end)) 制定某一字符片段,在一点区间内出现次数,不限定区间则默认全部。

      endswith(“  ”,num(start) , num2(end)) 判定是否以“  ”内字符结尾,得bool类型

      startswith(“  ”,num(start) , num2(end)) 判定是否以“  ”内字符开始,得bool类型

      find(“  ”,num(start) , num2(end)) 找到“   ”内的内容是在某一范围的什么位置开始的,不限定范围则是全部,找不到的-1.(index功能相同,但找不到会报错)

      isalnum 判定该str是否只由数字和字母组成,得bool类型

      

     格式化,将一个字符串中的占位符替换为指定的值
     test = 'i am {name}, age {a}'
     print(test)
     v = test.format(name='alex',a=19)
     print(v)

     test = 'i am {0}, age {1}'                按顺序进入查找的,排序记得从0开始。
     print(test)
     v = test.format('alex',19)
     print(v)

    format_map具有一定的检索功能

     格式化,传入的值 {"name": 'alex', "a": 19}   这个不是很明白,大致传送的是一个字典
     test = 'i am {name}, age {a}'
     v1 = test.format(name='df',a=10)
     v2 = test.format_map({"name": 'alex', "a": 19})

    今天我的电脑有毛病,pycharm一直搞不定,耽搁时间了,哎呀,第二天还是很开心啊。

  • 相关阅读:
    基于windows server 2016和sqlserver 2016 AlwaysOn的群集配置
    Mysql基于Mysql Cluster+MysqlRouter的集群部署方案
    阿里云ECS部署Redis主备哨兵集群遇到的问题
    Informix数据库配置与连接
    Linux系统中Redis和Tomcat的PID文件路径设置
    Linux端口映射,80端口映射到8080端口
    Tomcat优化配置
    Tomcat配置自定义JAVA环境
    VMware虚拟机系统无法使用桥接联网
    PostgreSQL远程访问设置
  • 原文地址:https://www.cnblogs.com/xiaoyaotx/p/12359670.html
Copyright © 2020-2023  润新知