个人学习总结笔记如有不足和错误欢迎指教谢谢

1、执行 Python 脚本的两种方式
        1、进入python直接打命令
        2、让python运行1.py

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

3、简述 ascii、unicode、utf-8、gbk 的关系
        1、ASIIC编码中一个字符的大小就是1Byte
        2、Unicode将各国文字统一编码,所以Unicode编码可以看做是ASCII的扩展。特点:速度快,但是占内存大。
        3、UTF-8=ASCII码中的内容用1个字节保存、欧洲的字符用2个字节保存,东亚的字符用3个字节保存等等
        4、GBK也是基于Unicode编码的进一步优化,GBK的文字编码是用双字节来表示的,即不论中、英文字符均使用双字节来表示。
        cmd终端默认GBK
        unicode   utf8   gbk(针对中文)
        utf8: 用3个字节表示中文
        gbk : 用2个字节表示中文

4、请写出 “李杰” 分别用 utf-8 和 gbk 编码所占的位数
        utf-8:一个汉字是三个字节
        gbk:一个汉字是2个字节

5、Pyhton 单行注释和多行注释分别用什么?
        单行注解:#
        多行注解:'''中间是需要注解的内容(各个行)'''

6、声明变量注意事项有那些?
        变量名必须是:字母、数字、下划线 组成的,不能使用数字开头而且不能使用python里面的关键字

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

n1 = 5
v = n1.bit_length()
print (v)

8、布尔值分别有什么?
真True 或者 假False

"" = False
" " = True

0 = False
其他 = True

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

a = "alex"
b = a.capitalize()    #首字母大写
print(a)
print(b)

请写出输出结果:
alex
Alex

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

name = " aleX "

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

v = name.strip()
print('a',v)

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

v1 = v.startswith('al')
print('b',v1)

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

v2 = v.endswith('X')
print('c',v2)

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

v3 = v.replace('l','p')
print('d',v3)

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

v4 = v.partition('l')
print('e',v4)    #e ('a', 'l', 'eX')
v5 = v.split('l')
print('e1',v5)    #e1 ['a', 'eX']

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

('a', 'l', 'eX') = 元祖类型数据,不可变序列
        ['a', 'eX'] = 列表数据,是可变数据

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

v6 = v.upper()
print('g',v6)     #g ALEX

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

v7 = v.lower()
print('h', v7)    #h alex

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

v8 = v[1]
print('i',v8) #i l

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

v9 = v[0:3]
print('j',v9) #j ale

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

v14 = v[-2:]
print('k', v14) #k eX

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

v11 = v.find('e')
print('l',v11) #l 2

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

v12 = input('>>>') #等待用户输入
v13 = len(v12)    #计算用户输入的字符串的字符数
v13 = v12[0:(v13-1)]    #获取从0位到字符串长度减1位的 字符串数值
print(v13)

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

能被for循环就是可迭代

v1 = input('>>>')
for v2 in v1 :print (v2)

12、请用代码实现:

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

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

python2 中 第一次程序运行到range时会在内存里创建出所有的range数字
python3 中 第一次程序运行到range时只会在内存中创建 range首尾的两个数字

x = range(0,100,1)
for v in x :print(v)   # 1 - 99x1 = range(100,0,-1)
for v1 in x1 :print(v1) # 100 - 1

14、实现一个整数加法计算器:例如用户输入 5+5 、5+ 6、 6 + 8 、 9 +9

n = input('>>>')
v1,v2 = n.split('+')     #以 + 为分割符 把用户输入的字符串 分割成两个,并且装入v1 和 v2 两个变量里面
v3 = int(v1) + int(v2) #把v1 和 v2 转换成int数据类型然后相加
print(v3)

虽然实现了但是有个疑问?就是split之后 v1和v2 里面可能右空格这个字符,但是可以直接通过int命令转换??反正最终实验结果是成功了

15、计算用户输入的内容中有几个十进制小数?几个字母?(统计用户一共输入了多少位数字或字母)

shuZiShuLiang = 0
ziMuShuLiang = 0
shuRuDeZhi = input('请输入数字或字母:')     #等待用户输入 任意值字符串
for x in range(0, len(shuRuDeZhi), 1):  #循环0 到 字符串位数的数字每次数值加1v = shuRuDeZhi[x]         #给变量V赋值 为输入字符串x位的 字符if v.isdecimal():  #如果当前的字符 是数字shuZiShuLiang += 1  #则shuZiShuLiang值加1elif v.isalpha():   #如果当前字符 是字母ziMuShuLiang += 1  #则ziMuShuLiang值加1else:pass    #如果输入的不是数字也不是字母则什么都不做
print('数字', shuZiShuLiang)
print('字母', ziMuShuLiang)

PS:

判断数字用:

isdecimal :只能判断阿拉伯数字为 真 (推荐用这个比较准)

判断字母用:

isalpha 判断字符串中是否只含有字母 或 汉字,输出布尔值

16、简述 int  和 9  等数字

9 是一个数字 是对象 它包含在 int中
str 是字符串类 是一种类型

这就是数据类型与数据的关系

17、制作趣味模板程序

xxx 出生在xxx国 xxx市 从小就是一个 聪明的x(男/女)孩子。

yongHuMingCheng = input('请输入您的姓名:')
chuShengGuoJia = input('请输入您出生的国籍:')
chuShengChengShi = input('请输入您出生的城市:')
xingBie = input('请输入您的性别(男/女):')
#xianShiWenBen = '{x}出生在{x1} {x2} 从小就是一个 聪明的{x3}孩子'  #如果直接在{}中写入变量名称那么显示的就是{变量命},因为这个赋值时字符串在''内部
xianShiWenBen = '{0}出生在{1}{2}从小就是一个聪明的{3}孩子'
#上面创建了 显示文本的模板 用了4个占位符
#v = xianShiWenBen.format(x = yongHuMingCheng, x1 = chuShengGuoJia, x2 = chuShengChengShi, x3 = xingBie)
v = xianShiWenBen.format(yongHuMingCheng, chuShengGuoJia, chuShengChengShi, xingBie)
#上面使用了format格式命令 分别依次带入用户所填写的变量值到模板的空位里面,顺序是0到3
print(v)

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

while True:  #无线循环def check_code():#以下时生成验证码的命令import randomcheckcode = ''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) #显示验证码xiaoXieXiTongYanZhengMa = code.lower()   #把系统生成验证码变成小写并赋值给变量yongHuYanZhengMa = input('请输入验证码:')  #让用户输入验证码xiaoXieYongHuYanZhengMa = yongHuYanZhengMa.lower()  #把用户输入验证码变成小写并赋值给 xiaoXieYongHuYanZhengMa 变量if xiaoXieYongHuYanZhengMa == xiaoXieXiTongYanZhengMa: #判断小写用户验证码和小写系统验证码是不是一样print('验证码正确')  #如果一样就显示 验证码正确break       #跳出循环else:print('验证码有误请重新输入') #如果不一样就显示 重新输入

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

#建立一个敏感词库:123,qwe,我们,天上,okm

#敏感词库:123,qwe,我们,天上,okm
yongHuShuRu = input('>>>') #让用户输入含有敏感词的语句
v = yongHuShuRu.replace('123','***' )  # 分5步过滤敏感词
v = v.replace('qwe', '***')
v = v.replace('我们', '**')
v = v.replace('天上', '**')
v = v.replace('okm', '***')
print(v)

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

n = ''  #定义一个空的变量
while True:     #创建循环yongHuMing = input('用户名:')  #等待用户输入名称if yongHuMing == 'q' or yongHuMing == 'Q':  #比对用户输入的是否位 Q 或 qbreak       #如果是结束循环else:pass    #否则什么都不做yongHuMing = yongHuMing[0:20]   #对用户输入的名字取20个字符miMa = input('密码')  #等待用户输入密码if miMa == 'q' or miMa == 'Q':  #比对用户输入的是否位 Q 或 qbreak   #如果是结束循环else:pass    #否则什么都不做miMa = miMa[0:20]   #对用户输入的密码取20个字符youXiangDiZhi = input('邮箱地址')if youXiangDiZhi == 'q' or youXiangDiZhi == 'Q':breakelse:passyouXiangDiZhi = youXiangDiZhi[0:20]
#   print(yongHuMing, miMa ,youXiangDiZhi) #打印用户名和密码biaoTou =  '用户名\t密码\t邮箱\n'  #创建列标题biaoTou = biaoTou.expandtabs(25)    #完善列标题print(biaoTou)  #显示列标题
#   v = 'yongHuMing\t miMa\t youXiangDiZhi\n'biaoGeShuJu = "{x}\t{x1}\t{x2}\n"   #创建表格数据模板v = biaoGeShuJu.format(x = yongHuMing, x1 = miMa ,x2 = youXiangDiZhi)   #将当前用户输入的值写入表格模板n = n + v #将上一次用户的表格和这一次的相加print(n.expandtabs(25))  #加工制表

Python学习 10 - 基本数据类型小练习相关推荐

  1. Python学习教程:数据类型—字符串大总结

    Python学习教程:数据类型-字符串大总结 1. Python字符串的创建 字符串是Python中最常见的数据类型,通常使用单引号或双引号来定义一个字符串,如下: str = "我是字符串 ...

  2. JavaScript学习10 JS数据类型、强制类型转换和对象属性

    JavaScript学习10 JS数据类型.强制类型转换和对象属性 JavaScript数据类型 JavaScript中有五种原始数据类型:Undefined.Null.Boolean.Number以 ...

  3. 银角大王 python_小猿圈python学习-细讲数据类型-列表

    第一章我们大概介绍了列表的基本用法,本节我们学习下 定义:[]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素 再回顾下列表的特点: 1.可存放多个值 2.按照从左到右的顺序定义列表元素 ...

  4. 小猿圈 python学习-细讲数据类型-字典

    引子 我们学了列表 , 现在有个需求, 把你们公司每个员工的姓名.年龄.职务.工资存到列表里,你怎么存? staff_list = [ ["Alex",23,"CEO&q ...

  5. python学习笔记之数据类型(二)

    上一篇博客,小波介绍了python的入门和简单流程控制,这次写python的数据类型和各种数据类型的内置方法. 一.数据类型是何方神圣? 计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当 ...

  6. Python学习笔记---day07数据类型(下)

    Day07数据类型(下) 常见的数据类型: int,整数类型(整形) bool,布尔类型 str,字符串类型 list,列表类型 tuple,元组类型 dict,字典类型 set,集合类型 float ...

  7. Python学习笔记简单数据类型之数字

    1.整数: 在Python中可以对整数进行加减乘除以及取模运算,具体代码如下: #整数数据类型学习#加 i = 2 + 3; print(i);#减 i = 3 - 2; print(i);#乘 i ...

  8. Python学习笔记简单数据类型之字符串

    1.字符串: (1).字符串就是一系列字符,串起来形成的一种简单数据类型.在Python中,用引号括起来的都是字符串,包括单引号,双引号,其中字符串可以灵活的运用起来,字符串中可以包括引号和撇号,示例 ...

  9. 潭州教育-Python学习笔记@基本数据类型作业2

    列表方法: 1 lst = ['a','b','c','d'] 2 ##加 3 lst.append('e') ###增加元素 4 lst.extend(['f','g']) ### 拓展列表 5 l ...

最新文章

  1. NGINX访谈:软件负载均衡、API网关和服务网格的企业采用状况
  2. Zookeeper和分布式环境中的假死脑裂问题(转)
  3. 前端学习(218):属性选择器
  4. 【JavaScript】JS的Array的用法总结
  5. 凸优化第三章凸函数 3.6关于广义不等式的凸性
  6. Jmeter 中的BeanShell使用
  7. 16. Zigbee应用程序框架开发指南 - 扩展ZigBee Cluster Library (ZCL)
  8. 《红楼梦》的香气韵调
  9. 遗传算法pid matlab程序解释,关于遗传算法的pid整定问题
  10. 【运营宝典】华为分析服务如何助力广告投放策略优化?
  11. 2021年焊工(初级)考试资料及焊工(初级)复审考试
  12. 基于RESTful的FastAPI服务模板
  13. 论文人强烈推荐必备的几个中英文文献网站
  14. 图像分类数据集 (FASHION-MNIST)
  15. Nginx的作用是什么?有什么用?
  16. linux USB触屏无响应驱动出现EPIPE错误
  17. UVA-10082 WERTYU
  18. 【问题解决】ESP32报错:make: xtensa-esp32-elf-gcc: Command not found
  19. 计算机如何增加网络地址,如何添加网络打印机到电脑
  20. 51CTO稿酬标准2016版正式发布!

热门文章

  1. UE4学习杂项总结一
  2. jsvmp-某乎 x-zes-96 算法还原
  3. EOS - 常用命令(获取余额、创建账户、发送EOS Token)
  4. 为什么选择进入金融业?
  5. 【C语言循环结构题目】幻影素数
  6. 不朽凡人 第五百四十一章 再见温连汐
  7. 【转】强悍的搞笑语录,老衲再也忍…
  8. Google 百度 图标收藏(三)
  9. 开源OA协同办公平台使用教程:O2OA如何集成yozo
  10. Snap在2019年第三季度的每日活跃用户数有所增长,但其股价下跌5%