python基础—数字,字符串练习题

时间:2023-02-23 22:54:33

1.如有一下变量 n1=5,请使用 int 的提供的方法,得到该变量最少可以用多少个二进制位表示?

n1=5
r=n1.bit_lenght()    #当前数字的二进制,至少用n位表示.bit_lenght()
print(r)

2.阅读代码,请写出执行结果

a="alex"
b=a.capitalize()
print(a)
print(b)

  请写出输出结果:

a=alex
b=Alex
#.capitalize()将字符串的首字母大写

3.写代码,有如下变量,请按照要求实现每个功能
  name=" aleX "
  a.移除 name 变量对应的值两边的空格,并输入移除后的内容

  name=" aleX "
  v=name.strip()    #.strip()移nn除指定字符串,空白,/t,/n等转义字符
  print(v)

  b.判断 name 变量对应的值是否以 "al"开头和以"X"结尾,并输出结果

  name='aleX'
  v1=name.startswith("al")   #判断以什么开头
  v2=name.endswith("X")		#判断以什么结尾
  print(v1)
  print(v2)

  c.将 name 变量对应的值中的 “l” 替换为 “p”,并输出结果

  name="aleX"
  v3=name.replace("l","p")    
  print(v3)

  

  d.将 name 变量对应的值根据 “l” 分割,并输出结果

  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
	  print("end")

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

  第一种:

  name='aleX'
	  idex=2
	  while idex<4:
		  v9=name[idex]
		  print(v9)
		  idex+=1
	  print("end")

  第二种:直接用索引 

  name='aleX'
  v10=name[2:4]   print(v10

  i.请输出 name 变量对应的值中 “e” 所在索引位置?

  

      name="aleX"
	 n=len(name)
	 idex=0
	 while idex<n:
		 v=name[idex]
		 if v=='e':
			 print(idex)
			 break
		 else:
			 idex+=1

  

  请用代码实现:
  a.利用下划线将列表的每一个元素拼接成字符串,li="alexericrain"
  b.利用下划线将列表的每一个元素拼接成字符串,li=['alex','eric','rain']

  

a:   li="alexericrain"
    v="_".join(li)
     print(v)
		 
b:   li=['alex','eric','rain']
     v='_'.join(li)

  

  Python2 中的 range 和 Python3 中的 range 的区别?
  Python2:
  range 立即创建
  xrange for循环时一个一个创建

  Python3:
  range for循环时一个一个创建

  

for i in range(100,0,-1):
	print(i)
			
for i in range(0,100,1)
	print(i)
			

  

  实现一个整数加法计算器:
  如:content=input('请输入内容: ')

  

content=input('请输入内容: ')
v1,v2=content.split('+')
v1=int(v1)
v2=int(v2)
v3=v1+v2
print(v3)

  

计算用户输入的内容中有几个十进制小数?几个字母?
如:content = input('请输入内容: ')#如:asduiaf878123jkjsfd-213928
  

c1=0
c2=0
val=input("请输入内容 ")
for item in val:
if item是数字:
c1 += 1
else:
c2 += 1

  

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

  

v1=input("姓名:  ")
v2=input("地点: ")
v3=input("爱好 ")
test="屌丝{0},最喜欢在{1},{2}"
#test = "屌丝{a},最喜欢在{b},{c}"
v=test.format(v1,v2,v3)
#v=test.format(a=v1,b=v2,c=v3)
print(v)

  

开发敏感词语过滤程序, 提示用户输入内容,如果用户输入的内容中包含特殊的字符:
如 "苍老师" "东京热",则将内容替换为 ***

  

v1=input("请输入: ")
if v1="苍老师" or "东京热":
	v1=v1.replace("苍老师",'***')
	print(v1)
else:
	print(v1)

  

制作表格
循环提示用户输入:用户名、密码、邮箱 (要求用户输入的长度不超过 20 个字符,如果超过则只有前 20 个字符有效)
如果用户输入 q 或 Q 表示不再继续输入,将用户输入的内容以表格形式大隐s=" "while 1:

s=" "
while 1:
  v1=input("user: ")
  v2=input("pwd: ")
  v3=input("mail: ")
  temp="{0}\t{1}\t{2}\n"
  v=temp.format(v1,v2,v3)
  s=s + v
  if v1=='q':
    break
print(s.expandtabs(20))