博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python全栈-基础知识练习题(一)
阅读量:7239 次
发布时间:2019-06-29

本文共 4032 字,大约阅读时间需要 13 分钟。

1.执行Python脚本的两种方式

①在控制台直接输入python,进入python模式逐行运行

②在控制台直接输入python   文件名(包含完整的路径)

2.简述位、字节的关系

一个字节等于8个位

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

先出现ascii码,之后出现unicode,utf-8是unicode压缩版

ascii由8位组成,只包含英文

unicode至少有16位组成,包含所有语言

utf-8以最少的位数表示所有语言,可与unicode相互转化

gbk由16位组成,只包含中文,可与unicode相互转化

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

 utf-8每个字占用3个字节,共占6个字节

gbk每个字占用2个字节,共4个字节

注:python2中len()获取字符串的字节数,python3中len()获取字符串中的字符个数

5.Python单行注释和多行注释分别用什么

 单行注释用#

多行注释前后各用"""(3个双引号)或'''(3个单引号)

6.声明变量注意事项有哪些

 变量只能由下划线、字母、数字组成,不能由数字开头,不能是python中的关键字,最好不要使用python内置函数名

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

n1.bit_length()

8.布尔值分别有什么

 True和False

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

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

请写出输出结果:

alex

Alex

10.写代码,有如下变量,请按照要求实现每个功能

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

new_name = name.split()print(new_name)

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

new_name = name.startswith('al')print(new_name)

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

new_name = name.endswith('X')print(new_name)

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

new_name = name.replace('l','p')print(new_name)

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

new_name = name.partition('l')print(new_name)

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

列表list类型

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

new_name = name.upper()print(new_name)

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

new_name = name.lower()print(new_name)

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

print(name[1])

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

print(name[0:3])

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

print(name[-2:])

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

new_name = name.find('e')print(new_name)

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

print(name[0:-1])

11.字符串是否可迭代对象?如可以请使用 for 循环每一个元素?

 字符串可迭代对象

s = input(">>>")for item in s:    print(item)

  

12.请用代码实现:

a. 利用下划线将列表的每一个元素拼接成字符串, li = "alexericrain"

'_'.join(li)

b. 利用下划线将列表的每一个元素拼接成字符串, li = ['alex', 'eric', 'rain'] (可选)

'_'.join(li)

13.Python2 中的 range 和 Python3 中的 range 的区别?

 Python2中的range运行后立即创建所有range范围内的数值

Python3中的range运行后只有在循环时才逐个创建

注:python2中的xrange与python3的range效果相同

14.实现一个整数加法计算器:

如:

content = input('请输入内容: ') # 如: 5+9 或 5+ 9 或 5 + 9

content = input("请输入内容:")n1,n2 = content.split('+')n1=int(n1)n2=int(n2)print(n1+n2)

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

如:

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

content = input('>>>')num = 0al = 0for item in content:   if item.isdigit():      num += 1   elif item.isalpha():      al += 1print('十进制数有:' ,num,'个')print('字母有:' ,al,'个')

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

 int和str称为类

9等数字是根据int类创建的一个对象

“xxoo”等字符串是根据str类创建的一个对象

17.制作趣味模板程序

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

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

test = '敬爱可亲的{0},最喜欢在{1}地方干{2}'n = input('名字:')p = input('地点:')t = input('爱好:')print(test.format(n,p,t))

18.制作随机验证码,不区分大小写。

流程:

- 用户执行程序
- 给用户显示需要输入的验证码
- 用户输入的值
用户输入的值和显示的值相同时现实正确信息; 否则继续生成随机验证码继续等待用户输入
生成随机验证码代码示例:

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

 

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 checkcodewhile True:   code = check_code()   print(code)   n = input("请输入以上验证码:")   if n.upper() == code.upper():      print(code)      break

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

如 "苍老师" "东京热",则将内容替换为 ***

v = input('>>>')v = v.replace('苍老师','***')v = v.replace('东京热','***')print(v)

20.制作表格

循环提示用户输入:用户名、密码、邮箱 (要求用户输入的长度不超过 20 个字符,如果超过则只有前 20 个字符有效)

如果用户输入 q 或 Q 表示不再继续输入,将用户输入的内容以表格形式打印

s = ""while True:    v1 = input("用户名:")    if v1.upper() == 'Q':       break    v2 = input("密码:")    v3 = input("邮箱:")    template = "{0}\t{1}\t{2}\n"    v = template.format(v1[:20],v2[:20],v3[:20])    s = s + vprint(s.expandtabs(20))

转载于:https://www.cnblogs.com/fainea/p/9660446.html

你可能感兴趣的文章
CSS-垂直|水平居中问题的解决方法总结
查看>>
Oracle数据库常用命令记录
查看>>
产品开发 - 产品架构
查看>>
一行代码让谷歌浏览器变成在线编辑器
查看>>
Redis的C语言客户端(hiredis)的安装和使用
查看>>
Java 之Object 类
查看>>
Android 调用系统联系人界面的添加联系人,添加已有联系人,编辑和修改。
查看>>
C语言单向链表
查看>>
【LeedCode】3Sum
查看>>
基于Token的WEB后台认证机制
查看>>
hdu1412
查看>>
ssh卡在debug1: SSH2_MSG_KEXINIT sent解决方法
查看>>
HTTP 错误 404.17 - Not Found和 HTTP 错误 404.2 - Not Found 解决办法
查看>>
Python中可迭代对象、迭代器以及iter()函数的两个用法详解
查看>>
C# winform程序防止前台卡死
查看>>
JdbcDaoSupport应用
查看>>
Java加密算法(五)——非对称加密算法的由来DH
查看>>
centos7下vim8.1的编译安装教程
查看>>
服务器上传文件:通过远程桌面传输文件
查看>>
Spring MVC 教程,快速入门,深入分析
查看>>