2018年11月18日 下雨天-练习题

range 用法2

test="人生若只如初见"
v=range(5)# 代表0到4的数字,用来创建连续数字
for i in v:
    print ("1.用来创建连续数字:",i)
b=range(0,10,2)# 按照步长为2 输出 0到9的数字
for i in b:
    print ("2.range第二个用法,按照一定间隔输出:",i)
# for i in test:
#     c=test.find(i)
#     print(c)
print("3.range和for的应用,注意range是返回数字,所以要用test[]索引法返回相对应的文字")
for i in range(0,len(test)):
    print(i,test[i])

 

1.运行Python有两种方式--解析器运行和源文件运行。

2.字长、字、bit、byte的关系
  字 word ;字节 byte ;位 bit ;字长是指字的长度
  1字节=8位(1 byte = 8bit)

3.简述ascii、unicode、utf-­‐8、gbk 的关系

 

4、请写出“李杰”分别用 utf-­‐8 和 gbk 编码所占的位数 

  utf--8 则是6个字节,48个位
  GBK 则是4个字节,42个位

 

 5、Pyhton 单行注释和多行注释分别用什么?

  ctrl+? 和   """     """

 6、声明变量注意事项有那些?

   不要用系统系统自带的名字,只能用下划线和数字和英文组合,不能用数字开头

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

3个二进制表示5
8、布尔值分别有什么?
  True 和 False

9、阅读代码,请写出执行结果

a="alex"
b=a.capitalize()#Python capitalize()将字符串的第一个字母变成大写,其他字母变小写。对于 8 位字节编码需要根据本地环境。
print(a)
print(b)

输出结果:a为alex   b为Alex

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

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

c.判断name 变量对应的值是否以"X"结尾,并输出结果
d.将name 变量对应的值中的“l”替换为“p”,并输出结果

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

f.请问,上一题e分割之后得到值是什么类型(可选)?
g.将name 变量对应的值变大写,并输出结果
h.将name 变量对应的值变小写,并输出结果
i.请输出name 变量对应的值的第2 个字符?
j.请输出name 变量对应的值的前3 个字符?

k.请输出name 变量对应的值的后2 个字符?
l.请输出name 变量对应的值中“e”所在索引位置?
m.获取子序列,仅不包含最后一个字符。如:oldboy则获取oldbo;root则获取roo

 
name=" aleX"
a=name.strip()
print ("a.移除name 变量对应的值两边的空格,并输出移除后的内容",a)
b=name.startswith("al")
print("b.判断name 变量对应的值是否以al开头,并输出结果",b)
c=name.endswith("X")
print("c.判断name 变量对应的值是否以X结尾,并输出结果",c)
d=name.replace("l","p")
print("d.将name 变量对应的值中的“l”替换为“p”,并输出结果",d)
e=name.split("l")
print("e.将name 变量对应的值根据“l”分割,并输出结果。",e)
print("f.请问,上一题e分割之后得到值是什么类型(可选)?","list列表类型")
g=name.upper()
print("g.将name 变量对应的值变大写,并输出结果",g)
h=name.lower()
print("h.将name 变量对应的值变小写,并输出结果",h)
i=name[2]
print("i.请输出name 变量对应的值的第2 个字符?",i)
j=name[0:3]
print("j.请输出name 变量对应的值的前3 个字符?也就是切片",j)

k1=name[len(name)-2:len(name)]
print("k1.请输出name 变量对应的值的后2 个字符?",k1)
k2=name[-2:len(name)]#或者len(name)直接不填,例如k2=name[-2:]
print("k2.请输出name 变量对应的值的后2 个字符?方法2",k2)
#索引是从0开始计数;当索引值为负数时,表示从最后一个元素(从右到左)开始计数,注意-1代表的是倒数第二个数值开始
l=name.find("e")
print("l.请输出name 变量对应的值中“e”所在索引位置?",l)
m=name[0:len(name)-1]#[0:-1]
print("m.获取子序列,仅不包含最后一个字符。",m)

 

 21、字符串是否可迭代对象?如可以请使用 for 循环每一个元素?
   是
test1="人生如只如初见"
for i in test1:
    print(i)

22.请用代码实现:

a. 利用下划线将列表的每一个元素拼接成字符串,li =“alexericrain”
b. 利用下划线将列表的每一个元素拼接成字符串,   li=['alex','eric','rain']

c.组合li字符串

li="alexericrain"
x="_"
a22=x.join(li)
print("22a. 利用下划线将列表的每一个元素拼接成字符串,li =“alexericrain”","\n",a22)
li2=['alex','eric','rain']
b22=x.join(li)
print("22b.利用下划线将列表的每一个元素拼接成字符串,li    ['alex',  'eric',    'rain']","\n",b22)#注意join用法
li2=['alex','eric','rain']
c22=li2[0]+li2[1]+li2[2]
print("22c.列表的每一个元素拼接成字符串,   li=['alex','eric','rain']","\n",c22)

 

 23、Python2 中的range 和Python3 中的range 的区别?

python2:直接给出范围内所有的数,立即创建

python3:给出数据的范围,循环时才一个一个创建

#for item in range(100,0,-1) 补充内容,从大到小排列,依次减一!!

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

 
n1=input("请输入第一个数字:")
n2=input("请输入第二个数字:")
n3=int(n1)+int(n2)
print("24a、实现一个整数加法计算器:","\n",n1,"+",n2,"=",n3)
r = input("请输入您需要想加的数字:")
v1,v2 = r.split("+")# 如果输入的格式为4+3,则将4和3先分割,然后风别赋值给V1,V2
v1 = int(v1)
v2 = int(v2)
n = v1 + v2
print("24b、实现一个整数加法计算器:",n)

 

25、计算用户输入的内容中有几个十进制小数?几个字母?

如:content = input('请输入内容:') # 如:asduiaf878123jkjsfd-­‐213928

x=0
y=0
v=input("请输入内容:")
for a in v:
    if a.isalpha():#判定是否是字母
        x+=1
    elif a.isnumeric():#判定是否是数字
        y+=1
print("25、计算用户输入的内容中有几个十进制小数?几个字母?","\n",x,"个字母","\n",y,"个数字")

 

 26、简述 int 和 9 等数字 以及 str 和 "xxoo" 等字符串的关系?

  int是类或者类型,9则是对象。str与“xxoo”也是类似的

27.需求:等待用户输入名字、地点、爱好,根据用户的名字和爱好进行任意现实

如:敬爱可亲的 xxx,最喜欢在 xxx 地方干 xxx

test1="敬爱可亲的{name},最喜欢在{where}地方干{do}"
test2="令人讨厌的{0},最讨厌在{1}地方干{do}"
a=input("姓名:")
b=input("地方:")
c=input("行为:")
d=test1.format_map({"name":a,"where":b,"do":c})
e=test2.format(a,b,do=c)
#两种不同的方法
print("27.需求:等待用户输入名字、地点、爱好,根据用户的名字和爱好进行任意现实:\n",d,"\n",e)

 

28、制作随机验证码,不区分大小写。
流程:用户执行程序    给用户显示需要输入的验证码  用户输入的值
用户输入的值和显示的值相同时现实正确信息;否则继续生成随机验证码继续等待用户输入

 

def check_code():#随机验证码生成
    import random
    checkcode=""
    for i in range(4):
        current = random.randrange(0,4)
        if current !=i:
            temp = chr(random.randint(65,90))
        else:
            temp = random.randint(0,9)
        checkcode+= str(temp)
    return checkcode

a=""
a1=""
codex="1"
while a1!=codex:
    code = check_code()#循环生成随机验证码
    codex=code.lower()
    print("验证码:", code)
    a = input("请输入4位验证码:")
    a1=a.lower()
else:
    print("28、制作随机验证码,不区分大小写:U R Welcome")

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

a=input("请输入测试文字:")
b=a.replace("东京热","***")
c=b.replace("苍老师","@@@")
print("29.敏感词替换:\n",c)

 

posted @ 2018-11-18 15:51  小圣庄  阅读(443)  评论(0编辑  收藏  举报