• python学习3


    一、内容回顾,加上练习题,登陆界面

    练习题

    三次机会登陆

    #用户登陆(三次输错机会)且每次输错误时显示剩余错误次数
    name = 'xiaofeifei'
    pwd = '123'
    i = 1
    while i <= 3:
        username = input('请输入用户名:')
        password = input('请输入密码:')
        msg = '''
        -------------%s登陆成功-------------
        用户:%s
        密码:%s
        ------------- END ------------------''' % (username, username, password)
        if username == name and password == pwd:
            print(msg)
            break
        else:
            if 3-i == 0:
                judgement = input('没有机会了,你还想再重新开始吗,如果想重新开始,请输入YES')
                if judgement == 'YES':
                    i = 1
                    continue
            print('请重新输入,你还有%d次机会' %(3-i))
        i += 1
    else:print('登陆失败')
    View Code

     二 、数据类型

    1.int

    i = 5
    print(i.bit_length()) #数字转换成二进制最少的位数

    2.bool

    数字、字符串和bool值的转换

    #数字转换成bool值
    i = 4
    b = bool(i)
    s = ''#空字符串转换成bool值是False
    s = ' '#非空字符串都是True

    字符串和bool值转换的应用

    s = input('enter your name:')
    if s:
        print(s)
    else:
        print('the input is bare') #如果是'',执行这一条

    3.str

    字符串的索引和切片:

    s = 'ABCDLSESRF'
    #索引
    # s1 = s[0]
    # print(s1)
    # s2 = s[2]
    # print(s2)
    # s3 = s[-1]
    # print(s3)
    # s4 = s[-2]
    # print(s4)
    # #ABCD   切片 :顾头不顾尾
    # s5 = s[0:4]
    # print(s5)
    # s6 = s[0:-1]
    # print(s6)
    # s7 = s[:]
    # s8 = s[0:]
    # print(s7,s8)
    # s9 = s[0:0]
    s = 'ABCDLSESRF'  # s[首:尾:步长]
    # s10 = s[0:5:2]
    # print(s10)
    s11 = s[4:0:-1]
    print(s11)
    s12 = s[3::-1]
    print(s12)
    s13 = s[3::-2]
    print(s13)
    s = 'ABCDLSESRF'
    s14 = s[-1::-1]
    print(s14)
    s15 = s[::-1]
    print(s15)
    View Code

    顺序读取,从0 开始; 逆序读取,从-1开始

    顾头不顾尾     尾巴上标号的数字,无法取到,s[2:5]即取第3、4、5个数字

    字符串的用法、操作

    s = 'alexWUsir'
    s1 = s.capitalize()  # 首字母大写
    # print(s1)
    
    # 全大写,全小写
    s2 = s.upper()
    s21 = s.lower()
    # print(s2,s21)
    '''
    s_str= 'acEQ1'
    you_input =input('请输入验证码,不区分大小写')
    if s_str.upper() == you_input.upper():
        print('输入成功')
    else:
        print('请重新输入')
    '''
    #大小写翻转
    # s3 = s.swapcase()
    # print(s3)
    # 每个隔开(特殊字符或者数字)的单词首字母大写
    # s = 'alex*egon-wusir'
    # s4 = s.title()
    # print(s4)
    # s = 'fade,crazy*w4rri0r_songsong node_3'
    # s4 = s.title()
    # print(s4)
    
    #居中,空白填充
    # s = 'alexWUsir'
    # s5 = s.center(20,'~')
    # print(s5)
    
    # s = 'alex	sir'
    # s6 = s.expandtabs()
    # print(s6)
    
    # s = 'alex二哥'
    # #公共方法
    # l = len(s)
    # print(l)
    
    #以什么开头结尾 endswith
    # s = 'alexWUsir'
    # s7 =s.startswith('alex')
    # s71 = s.startswith('e',2,5)
    # print(s71)
    '''
    if s7:
        pass
    elif s.startswith('bl'):
        pass
    print(s7)
    '''
    # find 通过元素找索引,找不到返回-1
    #
    # index通过元素找索引,找不到报错
    # s = 'alexWUsir'
    # s8 = s.find('A')
    # s81 = s.index('A')
    # print(s81,type(s8))
    
    #strip rstrip lstrip
    # s = 'alexWUsir%'
    # s9 = s.strip('%')
    # print(s9)
    # s = ' *a%lexWUsi* r%'
    # s91 = s.strip(' %*')
    # print(s91)
    
    # strip 默认删除前后空格
    
    # username = input('请输入名字:').strip()
    # if username =='春哥':
    #     print('恭喜春哥发财')
    
    # s = 'alexaa wusirl'
    # s10 = s.count('al')
    # print(s10)
    
    # split   str ---->list
    # s = ';alex;wusir;taibai'
    # l = s.split('a')
    # print(l)
    
    #format的三种玩法 格式化输出
    # s = '我叫{},今年{},爱好{},再说一下我叫{}'.format('太白',36,'girl','太白')
    # print(s)
    # name = input('请输入名字:')
    # s = '我叫{0},今年{1},爱好{2},再说一下我叫{0}'.format(name,36,'girl')
    # print(s)
    # name = input('请输入名字:')
    # s = '我叫{name},今年{age},爱好{hobby},再说一下我叫{name}'.format(age=18,name=name,hobby='girl')
    # print(s)
    
    # s = '来看待街坊邻居复合大师街坊法好的撒见客户'
    # s11 = s.replace('街坊','老王',1)
    # print(s11)
    
    # s = 'fhdsklfds'
    # for i in s:
    #     print(i)
    s = 'fdsa苍井空fdsalk'
    if '苍井空' in s:
        print('您的评论有敏感词...')
    View Code

    首字母大写   s.capitalize()

    全部大写       s.upper()

    全部小写        s.lower()

    大小写翻转      s.swapcase()

    每个单词首字母大写   s.title(单词可以用空格、符号和数字隔开)

    设置输出总长度   s.center()

    求字符串长度     l = len(s)

    判断前几位由什么组成     s.startwith('xiao')

    判断后几位由什么组成      s.endwith('feifei')

    通过元素找索引,找到返回位置,没有则返回-1    s.find('SB')

    索引元素位置,无该元素则报错    s.index('SB')

    去前后空格和其他特殊字符     s.strip()    s.strip('%')

    只删除字符串前面、后面的空格和特殊字符    s.lstrip    s.rstrip

    统计字符串中某结构的个数:        s.count('DD')

    将字符串分割成列表    s.split()     s.split(';')

    字符串的格式化输出

    三种形式

    # s = '我叫{},今年{},爱好{},再说一下我叫{}'.format('太白',36,'girl','太白')
    # print(s)
    # s = '我叫{0},今年{1},爱好{2},再说一下我叫{0}'.format('太白',36,'girl')
    # print(s)
    # name1 = input('name')
    # s = '我叫{name},今年{age},爱好{hobby},再说一下我叫{name}'.format(name = name1,hobby = 'girl',age = 19)
    # print(s)

    第一种    字符串后直接加format,和%S用法相似

    第二种    给字符串格式化输出内容加标号,略去相同类型的format书写

    第三种     给字符串格式化输出内容加名称,用名称来作为字符串内输出内容的索引,不用管顺序,推荐用该用法

    4.list 列表   用于存储大量数据

    [1,2,3,'[3,4,44],'aa']

    5.元组    用于存储大量不可改变的、重要的数据

    不可改变的列表

    (1,2,3,[3,4,'aa'],'bb)

    6.字典dict    用于存储大量相关性强的数据

    {'name':'云姐’,‘age':16}

    {'云姐':[],'二哥':[]}

  • 相关阅读:
    ssh 无密码互通
    React之jsx转js
    分布式事务参考
    js跨域解决方案
    idea编译时JDK版本变化
    计数算法
    Rocketmq消息持久化
    rocketmq安装
    nginx高可用配置
    nginx负载均衡设置
  • 原文地址:https://www.cnblogs.com/benbenxiaofeifei/p/9311058.html
Copyright © 2020-2023  润新知