python基础--基本数据类型考试_day3
1、执行 Python 脚本的两种方式
终端和交互模式
法1:
python helloword.py
法2:
ps: 执行前需给预chmod 755 helloword.py (linux系统中)
./helloword.py
2、简述位、字节的关系
1byte =8位
3、简述 ascii、unicode、utf-8、gbk 的关系
- unicode:包含所有国家的字符编码,
- utf-8可变长的字符编码,英文表示一个字节,中文(繁文)表示3个字节
- ascii美国标志信息交换代码,是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,一个字符占一个字节
- gbk全称《汉字内码扩展规范》,一个字符占用两个字节
4、请写出 “李杰”分别用 utf--‐8 和 gbk 编码所占的位数
- 在utf-8中,一个中文字符占用3个字节
- 在gbk中一个汉字占用2个字节
- 李杰 = utf-8(6字节)=48
- 李杰 = gbk(4字节)=32
5、Pyhton 单行注释和多行注释分别用什么?
- 单行注释 #被注释内容
- 多行注释 '''被注释内容'''
6、声明变量注意事项有那些?
- 变量名只能是 字母、数字或下划线的任意组合
- 变量名的第一个字符不能是数字
- 以下关键字不能声明为变量名
- ['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
- 最好不好和python内置的东西重复
7、如有一下变量 n1=5,请使用 int 的提供的方法,得到该变量少可以用多少个二进制位表示?
n1=5
v = int(n1.bit_length())
print(v)
执行结果:
3
8、布尔值分别有什么?
- 一个布尔值只有True、False两种值,要么是True,要么是False
- 可以用0或1表示
9、阅读代码,请写出执行结果
a = "alex"
b = a.capitalize()
print(a)
print(b)
执行结果:
alex
Alex
10、写代码,有如下变量,请按照要求实现每个功能
name="aleX"
a.移除 name 变量对应的值两边的空格,并输入移除后的内容
print(name.strip()) #aleX
b.判断 name 变量对应的值是否以"al"开头,并输出结果
print(name.startswith('al')) #False
c.判断 name 变量对应的值是否以"X"结尾,并输出结果
print(name.endswith('X')) #False
d.将 name 变量对应的值中的“l”替换为“p”,并输出结果
print(name.replace('l','p')) #aleX
e.将 name 变量对应的值根据“l”分割,并输出结果。
print(name.split('l')) #['a', 'eX']
f.请问,上一题e分割之后得到值是什么类型(可选)
print(type(name.split('l'))) #<class 'list'>
g.将 name 变量对应的值变大写,并输出结果
print(name.upper()) #ALEX
h.将 name 变量对应的值变小写,并输出结果
print(name.lower()) #alex
i.请输出 name 变量对应的值的第 2 个字符?
print(name[1:2]) #l
j.请输出 name 变量对应的值的前 3 个字符?
print(name[:3]) #ale
k.请输出 name 变量对应的值的后 2 个字符?
print(name[-2:]) #eX
l.请输出 name 变量对应的值中“e”所在索引位置?
print(name.index('e')) #2
m.获取子序列,仅不包含后一个字符。如:oldboy则获取oldbo;root则获取roo
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#Author: nulige n1 = "oldboy"
n2 = n1.strip('y')
print(n2)
执行结果:
oldbo
21、字符串是否可迭代对象?如可以请使用 for 循环每一个元素?
可以
name = "nulige"
for i in name:
print(i)
执行结果:
n
u
l
i
g
e
补充知识:
什么是迭代?
利用 for 循环来遍历一个列表(list)或元组(tuple),将值依次取出,这种方法我们称为迭代。
利用for语句迭代字符串,创建一个字符串,name = "nulige",然后用for语句进行迭代。
22、请用代码实现:
a.利用下划线将列表的每一个元素拼接成字符串,li="alexericrain"
li = "alexericrain"
v = "_".join(li)
print(v)
执行结果:
a_l_e_x_e_r_i_c_r_a_i_n
b.利用下划线将列表的每一个元素拼接成字符串,li=['alex','eric','rain'](可选)
li = ['alex','eric','rain']
v = "_".join(li)
print(v)
执行结果:
alex_eric_rain
23、Python2 中的 range 和 Python3 中的 range 的区别?
python2直接就在内存中创建出来
pyhotn3没有在内存中创建出来,需要使用for循环才会创建出来
24、实现一个整数加法计算器:
如:content=input('请输入内容:')#如:5+9或5+9或5+9
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#Author: nulige n1 = int(input("name:"))
n2 = int(input("age:"))
info = n1+n2
print(info)
执行结果:
name:5
age:9
14
25、计算用户输入的内容中有几个十进制小数?几个字母?
如:content=input('请输入内容:')#如:asduiaf878123jkjsfd-‐213928
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#Author: nulige number_null = ""
name = "123456asdfsdf"
str_null = ""
for i in name:
if i.isdecimal(): #判断i的值是不是数字
number_null += i #如果i的值是数字的话,则加入到number_null
elif i.isalpha(): #判断i的值是不是字母
str_null += i
print(number_null,str_null)
print(len(number_null),len(str_null))
执行结果:
123456 asdfsdf
6 7
26、简述int和9等数字以及str和"xxoo"等字符串的关系?
数字就是整型,带“ ”的就是字符串
27、制作趣味模板程序
需求:等待用户输入名字、地点、爱好,根据用户的名字和爱好进行任意现实
如:敬爱可亲的 xxx,喜欢在 xxx 地方干 xxx
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#Author: nulige n1 = input("name:")
n2 = input("add:")
n3 = input("hobby:")
print("敬爱的",n1,"喜欢在",n2,"安静的",n3)
执行结果:
敬爱的 成龙 喜欢在 图书馆 安静的 看书
28、制作随机验证码,不区分大小写。
流程:
-‐用户执行程序
-‐给用户显示需要输入的验证码
-‐用户输入的值
用户输入的值和显示的值相同时现实正确信息;否则继续生成随机验证码继续等待用户输入
生成随机验证码代码示例:
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#Author: nulige 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) count = 0
while count < 3:
identifying_code = input("请输入验证码:")
if code == identifying_code.upper():
print("验证通过---登录成功---")
break
else:
continue
count += 1
执行结果:
请输入验证码:lwv9
验证通过---登录成功---
29、开发敏感词语过滤程序,提示用户输入内容,如果用户输入的内容中包含特殊的字符:
如:"苍老师"“东京热”,则将内容替换为***
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#Author: nulige n1 = input("请输入:")
m = str.maketrans("苍老师", "***")
a = str.maketrans("东京热", "***")
new_v = n1.translate(m).translate(a)
print(new_v)
执行结果:
请输入:苍老师
***
30、制作表格
循环提示用户输入:用户名、密码、邮箱 (要求用户输入的长度不超过 20 个字符,如果超过则只有前 20 个字符有效) 如果用户输入 q 或 Q 表示不再继续输入,将用户输入的内容以表格形式打印
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#Author: nulige W = "用户名\t密码\t邮箱\n"
while 1 == 1:
name = input("用户名:")
if name == "q" or name == "Q" or name == "no":
print(w)
break
passwd = input("密码:")
if passwd == "q" or passwd == "Q" or quit == "no":
print(w)
break
mail = input("邮箱:")
if mail == "q" or mail == "Q" or mail == "no":
print(w)
break
Name = name[0:20]
Pwd = passwd[0:20]
Mail = mail[0:20]
b = "{0}\t{1}\t{2}\n".format(Name,Pwd,Mail)
n1 = W + b
w = n1.expandtabs(20)
continue
执行结果:
用户名:asfdsa
密码:ddd
邮箱:qq@qq.com
用户名:q
用户名 密码 邮箱
asfdsa ddd qq@qq.com
python基础--基本数据类型考试_day3的更多相关文章
- Python基础之数据类型
Python基础之数据类型 变量赋值 Python中的变量不需要声明,变量的赋值操作既是变量声明和定义的过程. 每个变量在内存中创建,都包括变量的标识,名称和数据这些信息. 每个变量在使用前都必须赋值 ...
- 第二章:python基础,数据类型
"""第二章:python基础,数据类型2.1 变量及身份运算补充2.2 二进制数2.3 字符编码每8位所占的空间位一个比特,这是计算机中最小的表示单位.每8个比特组成一 ...
- python基础一数据类型之字典
摘要: python基础一数据类型之一字典,这篇主要讲字典. 1,定义字典 2,字典的基础知识 3,字典的方法 1,定义字典 1,定义1个空字典 dict1 = {} 2,定义字典 dict1 = d ...
- 第一节 Python基础之数据类型(整型,布尔值,字符串)
数据类型是每一种语言的基础,就比如说一支笔,它的墨有可能是红色,有可能是黑色,也有可能是黄色等等,这不同的颜色就会被人用在不同的场景.Python中的数据类型也是一样,比如说我们要描述一个人的年龄:小 ...
- python基础一数据类型之集合
摘要: python基础一中介绍数据类型的时候有集合,所以这篇主要讲集合. 1,集合的定义 2,集合的功能 3,集合的方法 1,集合的定义 list1 = [1,4,5,7,3,6,7,9] set1 ...
- python基础一数据类型之元祖
摘要: python基础一中写到数据类型元祖,那么这篇主要讲元祖. 1,元祖定义 tuple1 = (1,2,'a','b') 元祖是不可变数据,所以又名只读列表.那么如何让是元祖可变呢?可以在元祖中 ...
- python基础一数据类型之列表
摘要: python基础一中写到列表,那么这篇主要讲列表. 1,定义列表 2,列表.元祖.字符串都属于序列,都可以用用索引和切片. 3,列表的方法 1,定义列表 list1 = ['a','b',1, ...
- Python基础一数据类型之数字类型
摘要: python基础一中提到了数据类型,这里主要讲解的是数字类型. 数字类型: 1,整型 2,长整型 3,浮点型 4,复数型 1,整型(int) 定义a = 1 通过type函数查看数据类型,整型 ...
- python基础(二)----数据类型
Python基础第二章 二进制 字符编码 基本数据类型-数字 基本数据类型-字符串 基本数据类型-列表 基本数据类型-元组 可变.不可变数据类型和hash 基本数据类型-字典 基本数据类型-集合 二进 ...
随机推荐
- subversion 1.8.5好像不是很成熟
加:--enable-all-static1. 没找到libneon库支持,不得不用libserf。2. libserf编译要用到scons.py,所有要有python工具支持。3. 当遇到链接少ss ...
- [Notes] Learn Python2.7 From Python Tutorial
I have planed to learn Python for many times. I have started to learn Python for many times . Howeve ...
- 网格测地线算法(Geodesics in Heat)附源码
测地线又称为大地线,可以定义为空间曲面上两点的局部最短路径.测地线具有广泛的应用,例如在工业上测地线最短的性质就意味着最优最省,在航海和航空中,轮船和飞机的运行路线就是测地线.[Crane et al ...
- BZOJ2429[HAOI2006]聪明的猴子[最小生成树 kruskal]
2429: [HAOI2006]聪明的猴子 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 896 Solved: 575[Submit][Statu ...
- 虚拟机安装的UBUNTU怎么全屏
虚拟机下面安装了ubuntu系统,显示的屏幕只有那么一小块儿,不知道如何才能全屏,那么如何全屏呢?且看下面经验. 步骤阅读 百度经验:jingyan.baidu.com 方法/步骤 1 打开虚拟机 ...
- ConcurrentHashMap是如何提高并发时的吞吐性能
为并发吞吐性能所做的优化 ConcurrentHashMap使用了一些技巧来获取高的并发性能,同时避免了锁.这些技巧包括: 为不同的Hash bucket(所谓hash bucket即不同范围的key ...
- 队列Queue
java中,Queue是Collection接口的子接口,Queue的实现类很多,如LinkedList类. 实际使用可以用LinkedList写一个Queue类,实现入队.出队.求队长.判空.打印等 ...
- 关于a标签和submit标签
a如果没有连接“#”:“javascript:void(0)”;或“(胡乱写一堆)” 这两个标签点击都有刷新功能,所以会清空你的数据.
- 053医疗项目-模块五:权限设置-将用户操作权限写入Session
权限管理指的是用户授权,与拦截器没有关系.拦截器只是一个技术,也可以用别的技术来实现的.别人问你权限管理,可不要和人家说什么拦截器.要说用户授权 前一篇文章是把实现了不同的用户呈现不用的菜单.这一篇文 ...
- JS多异步之间的协作方案
场景:使用工具函数downloadAllAsync接收一个URL数组并下载所有文件,结果返回一个存储了文件内容的数组,每个URL对应一个字符串. 好处:downloadAllAsync并不只有清理嵌套 ...