python学习系列day3-python基础

4.19
字符串 and 内部功能
字符串一旦创建不可修改
作业:
1、执行 Python 脚本的两种方式
1.exe+文件名
2.python

2、简述位、字节的关系
一字节8位bit

3、简述 ascii、unicode、utf-­‐8、gbk 的关系
ASCII : 2个字节
unicode:所有语言文字的表示
utf8:压缩版的Unicode,一个汉字3个字节
gbk:一个汉字2个字节
python3中len计算字符、python2中则表示计算字节

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

5、Pyhton 单行注释和多行注释分别用什么?
#
‘’’’’’/""""""

6、声明变量注意事项有那些?
数字字母下划线,数字不开头,关键字一般不建议使用

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

8、布尔值分别有什么?
True and False

9、阅读代码,请写出执行结果
a = “alex”
b = a.capitalize()
print(a)
print(b)
请写出输出结果:
alex
Alex

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

a. 移除 name 变量对应的值两边的空格,并输入移除后的内容

name = “aleX”
v = name.strip()
print(v)

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

name = “aleX”
v = name.startswith(‘al’)
print(v)

c. 判断 name 变量对应的值是否以 “X” 结尾,并输出结果

name = “aleX”
v = name.endswith(‘X’)
print(v)

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

name = “aleX”
v = name.replace(‘l’,‘p’)
print(v)

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

name = “aleX”
v = name.split(‘l’)
print(v)

f. 请问,上一题 e 分割之后得到值是什么类型(可选)?
列表

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

name = “aleX”
v = name.upper()
print(v)

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

name = “aleX”
v = name.lower()
print(v)

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

name = “aleX”
v = name[1]
print(v)

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

name = “aleX”
v = name[0:3]
print(v)

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

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

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

name = “aleX”
v = len(name)
for i in range(v):
if name[i] == ‘e’:
print(i,name[i])
else:
continue

m. 获取子序列,仅不包含最后一个字符。如: oldboy 则获取 oldbo; root 则获取 roo

name = “aleX”
print(name[0:-1])

21、字符串是否可迭代对象?如可以请使用 for 循环每一个元素?
可迭代对象=可以被for循环迭代获取
for i in something:
print(i)
类:str、int、、、
对象:根据类创建

22、请用代码实现:
a. 利用下划线将列表的每一个元素拼接成字符串,li = “alexericrain”
v= ‘_’.join(li)
b. 利用下划线将列表的每一个元素拼接成字符串,li = [‘alex’, ‘eric’, ‘rain’] (可选)

li = [‘alex’, ‘eric’, ‘rain’]
v= ‘_’.join(li)
print(v)

23、Python2 中的 range 和 Python3 中的 range 的区别?
python2中立即创建、python3中迭代,用到的时候才创建否则以range()形式表示

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

如: 5+9 或 5+ 9 或 5 + 9

name = ‘5+9’
v1,v2 = name.split(’+’)
v1 = int(v1)
v2 = int(v2)
print(v1+v2)

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

content = input('请输入内容:计算十进制小数个数和字母个数 ')
num = 0
zimu = 0
for n in content:
    if n.isdecimal() == True:
        num+=1
    elif n.isalpha() == True:
        zimu+=1
    else:
        pass
print ('数字个数 ',(num))
print ('字母个数',zimu)

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

27、制作趣味模板程序
需求:等待用户输入名字、地点、爱好,根据用户的名字和爱好进行任意现实
如:敬爱可亲的 xxx,最喜欢在 xxx 地方干 xxx
test = “敬爱可亲的{0},最喜欢在{1}地方干{2}”
name = input("请输入你的名字: ")
place = input("请输入你经常去的地方: ")
like = input("请输入你平时的爱好: ")
v = test.format(name,place,like)
print(v)

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

 def check_code():
    import random
    check_code = ''
    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)
        check_code += str(temp)
    return check_code
while True:
    code = check_code()
    print (code)
    v = input('请输入验证码>>>>')
    v1 = v.upper()
    if v1 == code:
        print ('验证码正确')
        break
    else:
        print('输入错误')
        break

29、开发敏感词语过滤程序,提示用户输入内容,如果用户输入的内容中包含特殊的字符:

“苍老师”
“东京热”,则将内容替换为


shuju = input(‘请输入字符’)
shuju = shuju.replace(‘苍老师’, ‘***’)
print(shuju)

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

s = ""
while True:
    v1 = input('请输入你的名字')
    v2 = input('请输入你的密码')
    v3 = input('请输入你的邮箱')
    template = "{0}\t{1}\t{2}\n"
    v = template.format(v1,v2,v3)
    s = s + v
    if v1 == "q" or v2 == "q" or v3 == "q" or v1 == "Q" or v2 == "Q" or v3 == "Q":
        break
print(s.expandtabs(20))
发布了4 篇原创文章 · 获赞 0 · 访问量 61

猜你喜欢

转载自blog.csdn.net/weixin_45583352/article/details/105638898