python基础—数字,字符串练习题
1.如有以下变量 n1=5,请使用 int 的提供的方法,得到该变量最少可以用多少个二进制位表示?
n1=5 r=n1.bit_lenght() #当前数字的二进制,至少用n位表示.bit_lenght() r >> 3 # 5的二进制为:101
2.阅读代码,请写出执行结果
a="alex" b=a.capitalize() print(a) print(b)
请写出输出结果:
a=alex b=Alex
3.写代码,有如下变量,请按照要求实现每个功能
name="aleX"
a.移除 name 变量对应的值两边的空格,并输入移除后的内容
name="aleX" v=name.strip() #.strip()移nn除指定字符串,空白,/t,/n等转义字符 v >> aleX
b.判断 name 变量对应的值是否以 "al"开头和以"X"结尾,并输出结果
name='aleX' v1=name.startswith("al") #判断以什么开头 v2=name.endswith("X") #判断以什么结尾 print(v1) >> True print(v2) >> True
c.将 name 变量对应的值中的 “l” 替换为 “p”,并输出结果
name="aleX" v3=name.replace("l","p") print(v3)
d.将 name 变量对应的值根据 “l” 分割,并输出结果
name = "alex" print(name.split('l')) >> ['a', 'ex']
e.将name变量对应的值分别变大写和小写,并输出结果
name="aleX" v5=name.casefold() #全部变成小写 v6=name.upper() #变成全部变成大写,对应的有lower() print(v5) #swapcase()大小写互相转换 print(v6)
f.请输出name变量对应的值的第2个字符?
name="aleX" v7=name[1] #索引 print(v7)
g.请依次输出 name 变量对应的值的前3个字符?
name='aleX' idex=0 while idex<3: v8=name[idex] print(v8) idex+=1
h.请输出 name 变量对应的值中 “e” 所在索引位置?
①、使用循环
name="aleX" n=len(name) idex=0 while idex<n: v=name[idex] if v=='e': print(idex) break else: idex+=1
②、内置方法
name = 'aleX' name.find('e') # 找不到会返回-1 name.index('e') # 找不到会抛出异常
i、.利用下划线将li="alexericrain"的每一个元素拼接成新的字符串
li = "alexericrain" l = "_".join(li)
j、利用下划线将列表的每一个元素拼接成字符串,li=['alex','eric','rain']
li=['alex','eric','rain'] v='_'.join(li)