python基础练习题30道
1、执行python脚本的两种方式
答:1>可以在python /home/xxxx.py
2>cd /home ./xxxx.py 因为py脚本里面指定了python解释器的位置
2、简述位、字节的关系
答:1Byte(字节)=8bit(二进制位)
3、简述ascii、unicode、uft-8、gbk的关系
答:ascii 英文编码,8个二进制位代表一个字母,总共可以有2的8次方减去1个等于255个
gbk是中文编码,是用的16个二进制代表一个汉字,有点浪费空间
uft-8也是中文编码,也是用的16个二进制代表一个汉字,但是能用8位表示就用位了
4、请写出“李杰”分别用utf-8的gbk编码所占的位数
6 4
5、python单行注释和多行注释分别用什么?
答:单行注释用# 多行注释用""" """
6、声明变量注意事项有哪些?
答:变量 = "abc" 变量 空格 = 空格 双引号之间的字符就是变量,在调用的时候要用吧变量用括号括起来()
变量,只能由字母、数字、下划线组成
特例:不能以数字开头
python的关键字也不能使用
7、如有以下变量n1 = 5,请使用int提供的方法,得到该变量最少可以用多少个二进制位表示
答:
n1 = 5 v = n1.bit_length() print (v)C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py3
8、布尔值分别有什么?
答:True False
9、阅读代码,请写出执行结果
a = "gouguoqi"
b = a.capitalize()
print (a)
print (b)
结果是
gouguoqi
Gouguoqi
10、写代码,有如下变量,请按照要求实现每个功能
a.移除name变量对应值的两边的空格,并输出移除后的内容
name = " gouguoQ" v = name.strip() print (v)C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.pygouguoQ
b.判断name变量对应的值是否以"go"开头,并输出结果
name = " gouguoQ" v = name.startswith('go') print (v)C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.pyFalse
c.判断name变量对应的值是否以"Q"结尾,并输出结果
name = " gouguoQ" v = name.endswith('Q') print (v)C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.pyTrue
d.将name变量对应的值中的"o",替换为"p",并输出结果
name = " gouguoQ" v = name.replace('g','p') print (v)C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.pypoupuoQ
e.将name变量对应的值根据"o"分割,并输出结果
name = " gouguoQ" v = name.split('o') print (v)C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py[' g', 'ugu', 'Q']
f.请问上一题分割之后得到的值是什么类型(可选)
列表
g.将name变量对应的值变大写,并输出结果
name = " gouguoQ" v = name.upper() print (v)C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.pyGOUGUOQ
h.将name变量对应的值变成小写,并输出结果
name = " gouguoQ" v = name.lower() print (v)C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.pygouguoq
i.请输出name变量对应的值的第二个字符?
name = " gouguoQ" v = name[2] print (v)C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.pyo
j.请输出name变量对应的值的前三个字符
name = " gouguoQ" v = name[0:3] print (v)C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.pygo
h.请输出name变量对应值的后2个字符
name = " gouguoQ" v = name[-2:] print (v)C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.pyoQ
l.请输出name变量中的值"Q的索引的位置
name = " gouguoQ" v = len(name) for n in range(v):if (name[n]) != "Q":continueelse:print (n,name[n])C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py7 Q
m.获取子序列,仅不包含最后一个字符,如:woaini则获取woain root则获取roo
name = " gouguoQ" print (name[0:-1])C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.pygouguo
21、字符串是否可以迭代对象?如果可以请使用for循环每一个元素?
for n in "woaini":print (n)C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.pywoaini
只要能被for循环,这个值就是 可迭代对象
#类,类型
str
各种方法
......
#对象,根据str类型创建一个对象,S1,在shell我们就叫变量
S1 = "gouguoqi"
22、请用代码实现
a.利用下划线将列表的每一个元素拼接成字符串 li = "gouguoqi"
li = "gouguoqi" v = "_".join(li) print (v)C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.pyg_o_u_g_u_o_q_i
b.利用下划线将列表的每一个元素拼接成字符串 li = ['gou','guo','qi']
li = ['gou','guo','qi'] v = "_".join(li) print (v)C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.pygou_guo_qi
23、在python2和3中range有啥区别
在python2.7里面,range可以直接帮我们打印出来范围内的数字,这个就有缺点了,比如我打印出来1万个数字,它得先把一万个数字打印出来,这个时候我们得等着了。并且占用很多内存
在python3里面,range创建之后,并不会把这些数字打印出来,而是在什么时候调用的时候才去一个一个的打印,比如我for循环调用的时候才会挨个打印,这样就省内存了
24、实现一个整数加法计算器:
如:
content = input("请输入内容:") 如:5+9或3+6或9008+2566content = input('请输入内容:格式是5+9 7+9 3+7 ') v = content.split('+') 先把输入的2个数字以+分割成2个字符串 n1 = int(v[0]) 把第一个数字转换成int类型 n2 = int(v[1]) 把第二个数字转换成int类型 n3 = n1 + n2 print (n1,'+',n2,'=',n3)C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py请输入内容:格式是5+9 7+9 3+7 22+3322 + 33 = 55
25.计算用户输入的内容中有几个十进制小数?几个字母?
如:
content = input ('请输入内容:') #如:adsffjjhb87902kdjhs-+9802jkl
思路是:定义2基数都是0,一个是字母的一个是数字的
把字符串挨个打印出来,打印出来一个,判断一个,如果是数字,就把数字的基数加一,如果是字母就把字母的基数加一,就不是数字也不是字母,就pass,最后打印出num zimu
content = input('请输入内容:计算十进制小数个数和字母个数 ') num = 0 zimu = 0 for n in content:if n.isdecimal() == True:num+=1 # print ('数字个数 ',(num))elif n.isalpha() == True:zimu+=1 # print ('字母个数',zimu)else:pass print ('数字个数 ',(num)) print ('字母个数',zimu)C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py请输入内容:计算十进制小数个数和字母个数 56gou<<<ijh78数字个数 4字母个数 6
26、简述int和9等数字 以及 str和"xxoo" 等字符串的关系?
int就是数字类型,str就是字符串类型,xxoo就是字符串
int str都是类,类型, 9 xxoo这些都是根据类创建的对象
27、制作趣味模板程序
需求:等待用户输入名字、地点、爱好、根据用户的名字和爱好进行任意显示
如:敬爱可亲的xxxx,最喜欢在xxxx地方干xxxx
name = input("请输入你的名字: ") place = input("请输入你经常去的地方: ") like = input("请输入你平时的爱好: ") print ('猥琐的',name,',','最喜欢在',place,'地方',like)test = "猥琐的{0},最喜欢在{1}地方干{2}" name = input("请输入你的名字: ") place = input("请输入你经常去的地方: ") like = input("请输入你平时的爱好: ") v = test.format(name,place,like) print(v)C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py请输入你的名字: 修电脑请输入你经常去的地方: 网吧请输入你平时的爱好: 撸管猥琐的修电脑,最喜欢在网吧地方干撸管
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
code = check_code()
print(code)
解答:
def check_code():import randomcheck_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 code = check_code() while True:code = check_code()print (code)v = input('请输入验证码>>>>')v1 = v.upper()if v1 == code:print ('验证码正确')breakelse:passC:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.pyTGHM请输入验证码>>>>dfghAEP5请输入验证码>>>>aep5验证码正确
29、开发敏感词语过滤程序,提示用户输入内容,如果用户输入的内容中包含特殊的字符:
如 "苍井空" "东京热" 则将内容替换为***
思路是:创建2个变量v1 v2,用find方法来判断用户输入的字符串里面是否有敏感词,有的话find的值就不是-1,只有find的值是-1的时候才是没有敏感词的
然后用if判断,如果2个值都等于-1,才证明不包含定义的2个敏感词,就正常打印,如果包含一个敏感词或者是包含2个敏感词都包含,就执行替换的操作
替换操作思路是,先替换苍井空。替换完成之后,给它赋值一个新的变量名字,再把新的变量里面的东京热再次替换下,最后打印出来最后的变量就是2者都替换过了的结果
shuru = input("请输入字符串") v = shuru.find('苍井空') v1 = shuru.find('东京热') if v == -1 and v1 == -1:print (shuru) elif v != -1 or v1 != -1:shuru1 = shuru.replace('苍井空','*****')shuru2 = shuru1.replace('东京热','*****')print (shuru2) # elif v1 != -1: # shuru.replace('东京热','*****') # shuru1 = shuru.replace('东京热','*****') # print (shuru1) else:passC:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py请输入字符串打算发松岛枫ppp34324苍井空了。。东京热了打算发松岛枫ppp34324*****了。。*****了
用in来实现其实更简单些,代码如下
如果有敏感词的话就题把敏感词替换成*****并且赶紧退出,没有敏感词的话可以继续输入
while True:name = input('请输入内容:')if "苍井空" in name or "东京热" in name:v = name.replace('苍井空', '*****')v1 = v.replace('东京热', '*****')print(v1)exit()else:print(name)
30、制作表格
循环提示用户输入:用户名、密码、邮箱(要求用户输入的长度不能超过20个字符,如果超过则只有前20个字符有效),如果用户输入q或者Q表示不再继续输入,将用户的内容一表格形式打印
s = "" while True:v1 = input('请输入你的名字')v2 = input('请输入你的密码')v3 = input('请输入你的邮箱')v4 = v1[0:19]v5 = v2[0:19]v6 = v3[0:19]test = "{0}\t{1}\t{2}\n"v = test.format(v4, v5, v6)b = v.expandtabs(20)s = s + bif v1 == "q" or v2 == "q" or v3 == "q" or v1 == "Q" or v2 == "Q" or v3 == "Q":break print(s)请输入你的名字q请输入你的密码ww请输入你的邮箱eeaa bb ccdd dd ddff ff ffq ww ee
转载于:https://www.cnblogs.com/gouguoqilinux/p/9103072.html
python基础练习题30道相关推荐
- Spark-Core基础练习题30道
Spark-Core练习题 1.创建一个1-10数组的RDD,将所有元素*2形成新的RDD val inputRDD = sc.parallelize(1 to 10) val newRDD = in ...
- python给定字符串显示奇数_字符串基础练习题80+道(原文及代码见文尾链接)
Python 字符串基础练习题80+道 1.编写一个Python程序来计算字符串的长度. 2.编写一个Python程序来计算字符串中的字符数(字符频率). Sample String:google.c ...
- Python基础练习题:杂乱无章的页面列表【难度:1级】--景越Python编程实例训练营,不同难度Python习题,适合自学Python的新手进阶
Python基础练习题:杂乱无章的页面列表[难度:1级]: 你得到了一本古老的书,不幸的是有几页错误的位置,幸运的是你的计算机有一个从"1"到"n"的顺序的每个 ...
- 这些Python基础练习题你会几个?
在人工智能大火的当今,Python 作为人工智能时代的首选语言已经越来越收到追捧:但是许多非科班.零基础的小伙伴常常苦于没有合适的入门 Python 的教程而感到苦恼:本人是一名资深Python开发, ...
- python基础练习题:简单有趣#32:创建字谜【难度:1级】--景越Python编程实例训练营,不同难度Python习题,适合自学Python的新手进阶
python基础练习题:简单有趣#32:创建字谜[难度:1级]: 任务 现在给你两个字符串S和长度相同的T,由大写英文字母.你的任务是找到获得一些anagram的串T从字符串s需要"更换操作 ...
- python基础练习题:Covfefe【难度:1级】--景越Python编程实例训练营,不同难度Python习题,适合自学Python的新手进阶
python基础练习题:Covfefe[难度:1级]: Covfefe 你给出的字符串.你必须用'covfefe但替换的单词(S)coverage,如果你没有找到字符串中的单词'coverage,你必 ...
- python基础练习题:棋盘【难度:1级】--景越Python编程实例训练营,不同难度Python习题,适合自学Python的新手进阶
python基础练习题:棋盘[难度:1级]: 编写打印N行M列下列规则棋盘的程序: 左上角单元格必须是一个星号(*) 任何细胞接触(左,右,上,下)有星号的小区必须是一个点(.) 任何细胞接触(左,右 ...
- 23道Python基础练习题附答案
1.Python和Java.PHP.C.C#.C++等其他语言的对比? (1)C语言 C语言,它既有高级语言的特点,又具有汇编语言的特点,它是结构式语言.C语言应用指针:可以直接进行靠近硬件的操作,但 ...
- python基础练习题与期末复习总结
本文是python入门练习题,为大家总结了python入门的最基础知识同时也是最常用的知识以及相应的题目,大家可以用于练习python,也适合用于python期末复习哦! 输出由任意字符串堆积的等腰三 ...
- Python基础练习题,你会吗?
1.如content=input("输入内容:")用户输入 5+9+6 +12 +13然后进行计算 content=input("请输入需要的内容:") lis ...
最新文章
- mysql distinct多个字段_深入浅出Mysql索引的那些事儿
- python编程if语法-python if控制流语句 语法笔记
- fatal: Unable to find remote helper for 'https'
- React简单表单最佳实践
- c #include如何找到文件_如何用C编写自己的头文件?
- ActiveRecord多表查询
- candence 知识积累3
- 忽略“Signal: SIGSEGV (Segmentation fault)”
- php 批量改文件夹名,如何批量更改文件名(终极解决方案)
- 计算机一级报名照片是几寸的,一级建造师报名照片要几寸的
- 阿里云手机号短信设置
- unity-MMD制作
- 大数据去重bitmap以及布隆过滤器
- win7计算机怎么初始化,win7怎么初始化电脑的方式
- 从博弈论看高薪行业岗位
- 手提电脑无法管理计算机,细说笔记本键盘无法输入怎么办
- 网络游戏客户端延迟处理
- 联合证券|滴滴出行即日起恢复!A股嗨了!券商扛起领涨大旗
- 使用jquery的bind来检测textarea,input等的文本变化
- arduino与hcsr04_Arduino 驱动 HC-SR04 超声波测距模块
热门文章
- 女员工有问题,责任在于头目不管事
- 谈工作没兴趣,空谈都有兴趣
- IntellJ IDEA可以单独调试一个类
- 深入浅出 MFC -WIN32基本概念
- ie9以下兼容html5,兼容ie9以下支持媒体查询和html5
- django html中文乱码,如何使用Python/Django执行HTML解码/编码?
- idea 新建ssm java ee_IntelliJ IDEA基于SpringBoot如何搭建SSM开发环境的步骤详解
- 当前最热门的编程语言python_2020年度最热门的编程语言盘点
- Unicode字符集和多字节字符集关系
- 解决ubuntu 用anaconda 安装R 语言后,无法安装R语言package的问题