zoukankan      html  css  js  c++  java
  • 老男孩Python九期全栈学习笔记4

    ---恢复内容开始---

    day4

    1、作业回顾

      1、有变量name = 'aleX leNb',完成如下操作:

        1)移除 name 变量对应的值两边的空格,并输出处理结果

        2)移除 name 变量左边的'al'并输出处理结果

        3)移除 name 变量右边的'Nb',并输出处理结果

        4)移除 name 变量开头的'a'与最后的'b',并输出处理结果

        5)判断 name 变量是否以'al'开头,并输出结果

        6)判断 name 变量是否以‘Nb’结尾,并输出结果

        7)将 name 变量对应的值中的所有的'l'替换为'p',并输出结果

        8)将 name 变量对应值中的第一个‘l’替换成‘p’,并输出结果

        9)将 name 变量对应的值根据第一个'l'分割,并输出结果

        10)将 name 变量对应的值根据所有的'l'分割,并输出结果

        11)将 name 变量对应的值变大写,并输出结果

        12)将 name 变量对应的值变小写,并输出结果

        13)将 name 变量对应的值首字母‘a’大写,并输出结果

        14)判断 name 变量对应的值字母'l'出现几次,并输出结果

        15)判断 name 变量对应的值前四位'l'出现几次,并输出结果

        16)从 name 变量对应的值中找到‘N’对应的索引(如果找不到则报错),并输出结果

        17)从 name 变量对应的值中找到'N'对应的索引(如果找不到则返回-1),并输出结果

        18)从 name 变量对应的值中找到'X le'对应的索引,并输出结果

        19)请输出 name 变量对应的值的第 2 个字符

        20)请输出 name 变量对应的值的前 3 个字符

        21)请输出 name 变量对应的值的后 2 个字符

        22)请输出 name 变量对应的值中'e'所在所有的索引位置

        

    Key:

        

     1 name = 'aleX leNb'
     2 print('1):' + name.strip(' '))
     3 print('2):' + name.lstrip('al'))
     4 print('3):' + name.rstrip('Nb'))
     5 print('4):' + name.strip('ab'))
     6 print('5):' + str(name.startswith('al')))
     7 print('6):' + str(name.endswith('Nb')))
     8 print('7):' + name.replace('l','p'))
     9 print('8):' + name.replace('l','p',1))
    10 print('9):' + str(name.split('l')))
    11 print('10):' + str(name.split('l',1)))
    12 print('11):' + name.upper())
    13 print('12):' + name.lower())
    14 print('13):' + name.capitalize())
    15 print('14):' + str(name.count('l')))
    16 print('15):' + str(name.count('l',0,4)))
    17 print('16):' + str(name.index('N')))
    18 print('17):' + str(name.find('N')))
    19 print('18):' + str(name.find('X le')))
    20 print('19):' + name[1])
    21 print('20):' + name[0:3])
    22 print('21):' + name[-2:])
    23 a = name.index('e')
    24 b = name.find('e',a+1,-1)
    25 print('22):' + str(a) + '' + str(b))

    运行结果:

    1):aleX leNb
    2):eX leNb
    3):aleX le
    4):leX leN
    5):True
    6):True
    7):apeX peNb
    8):apeX leNb
    9):['a', 'eX ', 'eNb']
    10):['a', 'eX leNb']
    11):ALEX LENB
    12):alex lenb
    13):Alex lenb
    14):2
    15):1
    16):7
    17):7
    18):3
    19):l
    20):ale
    21):Nb
    22):2、6

      2、有字符串 s ='132a4b5c':

      1)通过对字符串 s 的切片形成新的字符串 s1 , s1 = ‘123’

      2)通过对字符串 s 的切片形成新的字符串 s12, s2= ‘a4b’

      3)通过对字符串 s 的切片形成新的字符串 s3 , s3 = ‘1245’

      4)通过对字符串 s 的切片形成新的字符串 s4 , s4 = ‘3ab’

      5)通过对字符串 s 的切片形成新的字符串 s5 , s1 = ‘c’

      6)通过对字符串 s 的切片形成新的字符串 s6 , s1 = ‘ba3’

      Key:

    1 s ='132a4b5c'
    2 print('s1 : ' + s[0:3:2]+s[1])
    3 print('s2 : ' + s[3:6])
    4 print('s3 : ' + s[0::2])
    5 print('s4 : ' + s[1:-1:2])
    6 print('s5 : ' + s[-1])
    7 print('s6 : ' + s[-3::-2])

    执行结果 :

    s1 : 123
    s2 : a4b
    s3 : 1245
    s4 : 3ab
    s5 : c
    s6 : ba3

      3、使用while和 for 循环分别打印字符串 s = 'asdfer' 中每个元素。

      

     1 #while
     2 # s = 'asdfer'
     3 # flag = True
     4 # i = 0
     5 # while flag:
     6 #     print(s[i])
     7 #     i += 1
     8 #     num = len(s)
     9 #     if i == num:
    10 #         flag = False
    11 
    12 #for
    13 s = 'asdfer'
    14 for i in s:
    15     print(i)
    View Code

      4、实现一个整数加法计算器:

        如:content = input('请输入内容:')  #如果用户输入:5+9 或 5+ 9 或 5 + 9,然后进行分割再进行 计算。

      

     1 #方法1
     2 # content = input('请输入内容:').strip()
     3 # con = content.split('+')
     4 # num = 0
     5 # for i in con:
     6 #     num += int(i)
     7 # print(num)
     8 
     9 #方法2
    10 # content = input('>>>').strip()
    11 # index = content.find('+')
    12 # a = content[0:index]
    13 # b = int(content[index+1:])
    14 # print(int(a)+int(b))

      5、计算用户输入的内容中有几个整数。

      如:content = input ('请输入内容:')  #如 fhdal234slfh98769fjdla

      

     1 content = input ('>>>')
     2 i = 0
     3 sum = 0
     4 num = 0
     5 while 1:
     6     if content[i].isdigit() == True:
     7         sum += 1
     8     i += 1
     9     num = len(content)
    10     if i == num:break
    11 
    12 print(sum)
    1 #方法2 
    2 count = 0
    3 for i in s:
    4     if i.digit():
    5         count += 1
    6 print(count)

      明日默写内容:

      分别用while 和 for 循环输出字符串 s = input('你想输入的内容')的每一个字符

      

    PS:索引与切片知识点回顾

     1 #字符串的索引与切片
     2 s = 'ABCDLSESRF'
     3 #索引
     4 s1 = s[0]
     5 print(s1)   #s1字符串是形成的一个新字符串,与源字符串没有任何关系
     6 s2 = s[2]
     7 print(s2)
     8 s21 = s[-1]     #取最后一位
     9 print(s21)
    10 s22 = s[-2]     #取倒数第二位
    11 print(s22)
    12 
    13 #ABCD
    14 s3 = s[0:4]
    15 print(s3)       #通过切片形成新的字符串,源字符串并不会受到影响,
    16                 # 且字符串切片操作满足:“顾头不顾尾”原则
    17 print('s4 :' + s[-2:])  #从倒数第二个到最后
    18 s5 = s[0:-1]
    19 print(s5)
    20 s6 = s[0:]
    21 print(s6)
    22 s7 = s[:]
    23 print('s7 : ' + s7)
    24 s9 = s[0:0]
    25 print('s9 : ' + s9)
    26 print('s10 :' + s[0:5:2])   #加入步长,隔一个取一个
    27                              # s[首:尾:步长]
    28 
    29 print('s11 : ' + s[4:0:-1])
    30 print('s12 : ' + s[3:0:-1])
    31 print('s13 : ' + s[3::-1])
    32 print('s14 : ' + s[3::-2])
    33 print('s15 : ' + s[::-1])
    34 print('s16 : ' + s[-1::-1])

    附:以上程序执行结果

    A
    C
    F
    R
    ABCD
    s4 :RF
    ABCDLSESR
    ABCDLSESRF
    s7 : ABCDLSESRF
    s9 :
    s10 :ACL
    s11 : LDCB
    s12 : DCB
    s13 : DCBA
    s14 : DB
    s15 : FRSESLDCBA
    s16 : FRSESLDCBA

    ---恢复内容结束---

  • 相关阅读:
    java下载url图片链接
    mysql 设计索引的原则
    169. 多数元素
    263. 丑数
    markdown 语法笔记
    70.爬楼梯
    540. 有序数组中的单一元素
    88. 合并两个有序数组
    面试题57
    152. 乘积最大子序列
  • 原文地址:https://www.cnblogs.com/FrancisZhou/p/9530452.html
Copyright © 2011-2022 走看看