题目练习

Day03作业及默写

 

1.有变量name = "aleX leNb" 完成如下操作:

 

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

name ="aleX leNb"

print(name.strip())

  1. 移除name变量左边的"al"并输出处理结果

name ="aleX leNb"

print(name.lstrip('al'))

  1. 移除name变量右面的"Nb",并输出处理结果

name ="aleX leNb"

print(name.rstrip('Nb'))

  1. 移除name变量开头的a"与最后的"b",并输出处理结果

name ="aleX leNb"

s=name[1:-1]
print(s)

  1. 判断 name 变量是否以 "al" 开头,并输出结果

name ="aleX leNb"

s=name[0:2]
print(s)
if s=='al':
    print("该字符串是以al开头")
else:
    print("该字符串不是以al开头")

  1. 判断name变量是否以"Nb"结尾,并输出结果

name ="aleX leNb"

s=name[-2:]
print(s)
if s=='Nb':
    print("该字符串是以Nb结尾")
else:
    print("该字符串不是以Nb结尾")

 

  1. name 变量对应的值中的 所有的"l" 替换为 "p",并输出结果

name ="aleX leNb"

 print(name.replace('l','p'))

 

  1. name变量对应的值中的第一个"l"替换成"p",并输出结果

name ="aleX leNb"

print(name.replace('l','p',1))

  1. name 变量对应的值根据 所有的"l" 分割,并输出结果。

name ="aleX leNb"

s=name.split('l')
print(s)

  1. name变量对应的值根据第一个"l"分割,并输出结果。

name ="aleX leNb"

 s=name.split('l',1)
print(s) 

  1. name 变量对应的值变大写,并输出结果

name ="aleX leNb"
s=name.upper()
print(s)

  1. name 变量对应的值变小写,并输出结果

name ="aleX leNb"
s=name.lower()
print(s)

  1. name变量对应的值首字母"a"大写,并输出结果

name ="aleX leNb"
s=name.title()
print(s)

  1. 判断name变量对应的值字母"l"出现几次,并输出结果

name ="aleX leNb"
s=name.count('l')
print(s)

  1. 如果判断name变量对应的值前四位"l"出现几次,并输出结果

name ="aleX leNb"
s=name.count('l',0,4)
print(s)

  1. name变量对应的值中找到"N"对应的索引(如果找不到则报错),并输出结果

name ="aleX leNb"
s=name.index('N')
print(s)

  1. name变量对应的值中找到"N"对应的索引(如果找不到则返回-1)输出结果

name ="aleX leNb"
s=name.find('N')
print(s)

  1. name变量对应的值中找到"X le"对应的索引,并输出结果

name ="aleX leNb"
s=name.index('X le')
print(s)

  1. 请输出 name 变量对应的值的第 2 个字符?

name ="aleX leNb"
s=name[1]
print(s)

  1. 请输出 name 变量对应的值的前 3 个字符?

name ="aleX leNb"
s=name[0:3]
print(s)

  1. 请输出 name 变量对应的值的后 2 个字符?

name ="aleX leNb"
s=name[-2:]
print(s)

  1. 请输出 name 变量对应的值中 "e" 所在索引位置(两个e都找)?

 

name ="aleX leNb"
s=name.rfind('e')
print(s)
s1=name.find('e')
print(s1)

 

 

2.有字符串s = "123a4b5c"

  1. 通过对s切片形成新的字符串s1,s1 = "123"

s = "123a4b5c"
s1=s[0:3]
print(s1)

  1. 通过对s切片形成新的字符串s2,s2 = "a4b"

s = "123a4b5c"
s2=s[3:-2]
print(s2)

  1. 通过对s切片形成新的字符串s3,s3 = "1345"

s = "123a4b5c"
s3=s[::2]
print(s3)

  1. 通过对s切片形成字符串s4,s4 = "2ab"

s = "123a4b5c"
s4=s[1:-2:2]
print(s4)

  1. 通过对s切片形成字符串s5,s5 = "c"

s = "123a4b5c"
s5=s[-1:-2:-1]
print(s5)

  1. 通过对s切片形成字符串s6,s6 = "ba2"

s = "123a4b5c"
s6=s[-3:0:-2]
print(s6)

  1. 使用while和for循环分别打印字符串s="asdfer"中每个元素。

s="asdfer"
num=len(s)
i=0
while(i<num):
    print(s[i])
    i+=1

或者

s="asdfer"
for i in s:
     print(i)

4.使用for循环对s="asdfer"进行循环,但是每次打印的内容都是"asdfer"。

while True:
    s="asdfer"
    for i in s:
        print(i)

  1. 使用for循环对s="abcdefg"进行循环,每次打印的内容是每个字符加上sb, 例如:asb, bsb,csb,...gsb。

while True:
    s = "abcdefg"
    for i in s:
        print(i+'sb')

  1. 使用for循环对s="321"进行循环,打印的内容依次是:"倒计时3秒","倒计时2秒","倒计时1秒","出发!"。

while True:
    s = "321"
    for i in s:
        print('倒计时%s'%(i))
        if i=='1':
            print("出发!")

7.实现一个整数加法计算器(两个数相加):

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

content = input("请输入内容:")
s=content.split('+')
sum=int(s[0])+int(s[1])
print(sum)

  1. 升级题:实现一个整数加法计算器(多个数相加):

content = input("请输入内容:")
s=content.split('+')
NN=len(s)
i=0
sum=0
while i<NN:
    sum+=int(s[i])
    i+=1
print(sum)

如:content = input("请输入内容:") 用户输入:5+9+6 +12+  13,然后进行分割再进行计算。

 

9.计算用户输入的内容中有几个整数(以个位数为单位)。

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

s="fhdal234slfh98769fjdla"
i=0
for n in s:
    if n.isdigit():
        i+=1
print(i)

10.写代码,完成下列需求:(升级题)

用户可持续输入(用while循环),用户使用的情况:

输入A,则显示走大路回家,然后在让用户进一步选择:

是选择公交车,还是步行?

选择公交车,显示10分钟到家,并退出整个程序。

选择步行,显示20分钟到家,并退出整个程序。

输入B,则显示走小路回家,并退出整个程序。

输入C,则显示绕道回家,然后在让用户进一步选择:

是选择游戏厅玩会,还是网吧?

选择游戏厅,则显示 ‘一个半小时到家,爸爸在家,拿棍等你。’并让其重新输入A,B,C选项。

选择网吧,则显示‘两个小时到家,妈妈已做好了战斗准备。’并让其重新输入A,B,C选项。

while True:
    msg=input("用户输入ABC")
    if msg=="A":
       print("走大路回家")
       msg1=input("输入公交车或步行:")
       if msg1=="公交车":
            print("10分钟到家")
            break
       elif msg1=="步行":
            print("20分钟到家")
            break
    elif msg=='B':
        print("10分钟到家")
        break
    elif msg=='C':
        print("绕道回家")
        msg2 = input("游戏厅或者回家:")
        if msg2 == "游戏厅":
            print("一个半小时到家,爸爸在家,拿棍等你。")
            continue
        elif msg2 == "回家":
            print("两个小时到家,妈妈已做好了战斗准备。")
            continue

 

11.写代码:计算 1 - 2 + 3 ... + 99 中除了88以外所有数的总和?

count=0
sum=0
while count<99:
    count+=1
    sum+=(-1)**(count+1)*count
sum-=88
print(sum)

12.判断⼀句话是否是回⽂. 回⽂: 正着念和反着念是⼀样的. 例如, 上海 ⾃来⽔来⾃海上(升级题)

s="上海海上"
s1=s[::-1]
if s==s1:
    print("是回文")
else:
    print("不是回文")

输⼊⼀个字符串,要求判断在这个字符串中⼤写字⺟,⼩写字⺟,数字, 其它字符共出现了多少次,并输出出来

i1=0
i2=0
i3=0
i4=0
s=input("请输入字符串:")
for n in s:
    if n.isdigit():
        i1+=1
    elif n.isupper():
        i2 += 1
    elif n.islower():
        i3+=1
    else:
        i4+=1
print("大写字母个数为%s,小写字母个数为%s,数字个数为%s,其他字符个数为%s"%(i2,i3,i1,i4))

 

14.制作趣味模板程序需求:等待⽤户输⼊名字、地点、爱好,根据⽤户的名字和爱好进行任意现实 如:敬爱可亲的xxx,最喜欢在xxx地⽅⼲xxx

s1=input("姓名:")
s2=input("地点:")
s3=input("爱好:")
print("敬爱可亲的%s最喜欢在%s%s"%(s1,s2,s3))

15.将一下代码中的内容使用循环打印,分别使用while循环和for循环

s = ‘我怎么这么可爱’ 实现效果是

s="我怎么这么可爱"
num=len(s)
i=0
while i<num:
    i+=1
    print(s[i-1])

或者

s="我怎么这么可爱"
for n in s:
    print(n)

16. 

首先让用户输入序号选择格式如下:

  0.退出

  1.开始登录

  如果用户选择序号0 就提示用户退出成功

  如果用户选择序号1就让用户输入用户名密码然后进行判断,正确就终止循环,错误重新输入

while True:
    s=input("请输入序号:")
    if s=='0':
        print("用户退出成功")
        break
    elif s=='1':
        s1=input("请输入用户名:")
        s2= input("请输入密码:")
        if s1=="王哥" and s2=="123":
            print("输入正确")
            break

 

17.三次登录:

1.让用户输入三次的机会,错一次的时候就要询问用户是否要继续

2.分别判断用户名和密码,如果用户名错误就提示用户错误,如果是密码错误就提示是密码错误.在输入账号和密码时候不区分大小写

3.使用格式化输出来提示用户所剩余的次数

4.用户输入正确就提示’输入正确’,并结束循环

num=0
while num<3:
    msg1=input("请输入用户名:")
    msg2=input("请输入密码:")
    if msg1.upper()=="GuoGe".upper() and msg2.upper()=="asfgGSDa".upper():
        print("输入正确")
        break
    elif msg1.upper()=="GuoGe".upper() and msg2.upper()!="asfgGSDa".upper():
        print("输入用户名正确,但密码错误,是否要继续?")
        print("还剩下%s次机会"%(2-num))
    elif msg1.upper()!="GuoGe".upper() and msg2.upper() == "asfgGSDa".upper():
        print("输入用户名错误,密码正确,是否要继续?")
        print("还剩下%s次机会" % (2 - num))
    else:
        print("输入用户名和密码都错误,是否要继续?")
        print("还剩下%s次机会" % (2 - num))
    num += 1

明日默写内容:

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

s=input("请输入内容:")
num=len(s)
i=0
while i<num:
    print(s[i])
    i+=1

或者

s=input("请输入内容:")
for n in s:
    print(n)

 

 

猜你喜欢

转载自www.cnblogs.com/chenhu-605003808/p/10201039.html