Python 字符串相关练习题记录——第二天

1、执行Python脚本的两种方式
(1)直接使用编辑器运行
(2)使用命令进入目录,python xx.py执行

2、简述位、字节的关系
1字节=8位

3、简述ASCII、Unicode、Utf-8、Gbk的关系
(1)ascii 是最早美国用的标准信息交换码,把所有的字母的大小写,各种符号用 二进制来表示,共有256中,加入些拉丁文等字符,1bytes代表一个字符,
(2)Unicode是为了统一世界各国语言的,统一用2个bytes代表一个字符,可以表达2**16=65556个,称为万国语言,特点:速度快,但浪费空间,可以用在内存处理中,兼容了utf-8,gbk,ASCII,
(3)utf-8 为了改变Unicode的这种缺点,规定1个英文字符用1个字节表示,1个中文字符用3个字节表示,特点;节省空间,速度慢,用在硬盘数据传输,网络数据传输,相比硬盘和网络速度,体现不出来的,
(4)gbk是中文的字符编码,用2个字节代表一个字符,

4、请写出“李杰”分别与Utf-8和Gbk编码所占的位数
utf-8 6位
gbk 4位

==5、Python单行注释和多行注释分别用什么? ==
单行注释#
多行注释""" “”" 、’’’ ‘’’

6、声明变量注意事项有哪些?
(1)由字母、数字、下划线组成
(2)不能以数字开头
(3)不能以关键字命名

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

print(n1.bit_length())

8、布尔值分别有什么?
True、False
注意:不能写成true、false,区别java

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

a="alex"
	b=a.capitalize()
	print(a)
	print(b)
	请写出输出结果:

	alex
	Alex

10、写代码,如有以下变量,请按照要求实现每个功能
name=" aleX"

a.移除name变量对应的值两边的空格,并输出移出后的结果
print(name.strip())
b.判断name变量对应的值是否以"al"开头,并输出结果
print(name.startswith(“al”))
c.判断name变量对应的值是否以"X"结尾,并输出结果
print(name.endswith(“X”))
d.将name变量对应的值中的"“替换为"p”,并输出结果
print(name.replace(" ",“p”))
e.将name变量对应的值根据“l”分割,并输出结果
print(name.partition(“l”))
f.请问,上一题中e分割之后得到的值是什么类型(可选)?
元组类型
g.将name变量对应的值变大写,并输出结果
print(name.upper())
h.将name变量对应的值变小写,并输出结果
print(name.lower())
i.请输出name变量对应的值的第2个字符
print(name[1])
j.请输出name变量对应的值的前3个字符
print(name[0:3])
k.请输出name变量对应的值的后2个字符
print(name[-2:])
l.请输出name变量对应值中"e"所在的索引位置?
print(name.find(“e”))
m.获取子序列,仅不包含最后一个字符,如:oldboy则获取oldbo;root则获取roo
print(name[:-1])

21、字符串是否可以迭代对象?如可以请使用for循环每一个元素
可迭代对象:如果某一个东西可以被for循环,则称它为可迭代对象。

22、请用代码实现:
a.利用下划线将列表的每一个元素拼接成字符串,li=“alexericrain”
print("".join(li))
b.利用下划线将列表的每一个元素拼接成字符串,li=“alex”,“eric”,“rain”
print("
".join(li))
23、Python2中的range和Python3中的range的区别?
Python2中的range返回的是一个列表,Python3中的range返回的是一个迭代值,如下:

L=range(0,10)
	print(L)
	
	Python2输出:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
	Python3输出:range(0, 10)

24、实现一个整数加法计算器:
content=input(“请输入内容:”) #如:5+9 或5+9 或 5+9

value=input(">>>请输入两个数相加:")
	v1,v2=value.split("+")
	v1=int(v1)
	v2=int(v2)
	print(v1+v2)

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

c1 = 0
c2 = 0
content=input(">>>请输入内容:")
for item in content:
    if item.isnumeric():
        True
        c1 += 1
    else:
        c2 += 1
new_c1 = str(c1)
new_c2 = str(c2)
print("该字符串中数字有"+new_c1+"个")
print("该字符串中字母有"+new_c2+"个")

26、简述 int 和 9 等数字 以及 str 和 “alex”等字符串的关系?
int、str、9、“alex”是类和对象的关系。

27、制作趣味模板程序
需求:等待用户输入名字、地点、爱好、根据用户的名字和爱好进行任意实现。如:敬爱可亲的李老师,最喜欢在体育场散步

1)
x=input(">>>请输入用户名:")
y=input(">>>请输入最喜欢的地点:")
z=input(">>>请输入最喜欢做的事情:")
print("可爱的"+x+"同学," +"最喜欢在"+y+z)2)
test = "嘻嘻哈哈的{0},最喜欢在{1}地方{2}"
name = input("请输入你的名字: ")
place = input("请输入你经常去的地方: ")
like = input("请输入你的爱好: ")
v = test.format(name,place,like)
print(v)

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
code = check_code()
print(code)

29、开发敏感词语过滤程序,提示用户输入内容,如果用户输入的内容中包含特殊字符:如"傻子",“神经病”,则将内容替换为***

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

31、让用户输入一堆字符串,我们最终打印出来每个字符串的下标和源每个字符串

 a = input(">>>请输入字符串:")
  b = 0
  for c in a:
     print(b,c)
     b = b + 1

你可能感兴趣的:(Python学习,第二天习题记录)