python ----字符串基础练习题30道
1、执行python脚本的两种方式
一种是点开始--运行--cmd 方式(这个操作需要先配置好环境变量path路径)之后运行python
二是直接进安装目录 运行tython软件运行。pycharm
2、简述位、字节的关系
位:计算机的计算单位,代表0或者1
字节:一字节相当于8位
3、简述ascii、unicode、uft-8、gbk的关系
ascii 英文编码,8个二进制位代表一个字母,总共可以有2的8次方减去1个等于255个 gbk是中文编码,是用的16个二进制代表一个汉字,有点浪费空间 uft-8也是中文编码,也是用的16个二进制代表一个汉字,但是能用8位表示就用位了
4、请写出“李杰”分别用utf-8的gbk编码所占的位数
len(bytes(name,encoding='utf-8'))
6
len(bytes(name,encoding='gbk'))
4
5、python单行注释和多行注释分别用什么?
单行注释:#
多行注释 """ 开始 """结束
6、声明变量注意事项有哪些?
变量必须由数字,字母,下划线组成,不能以数字开头,不能用关键字,还有系统内置函数。
7、如有以下变量n1 = 5,请使用int提供的方法,得到该变量最少可以用多少个二进制位表示
n1 = 5
v = n1.bit_length()
print (v) #
8、布尔值分别有什么?
True False
9、阅读代码,请写出执行结果
a = "gouguoqi"
b = a.capitalize()
print (a)
print (b)
gouguoqi
Gouguoqi
10、写代码,有如下变量,请按照要求实现每个功能
name = " gouguoQ "
a.移除name变量对应值的两边的空格,并输出移除后的内容
v = name.strip()
print(v)
b.判断name变量对应的值是否以"go"开头,并输出结果
v = name.startswith('go')
print(v) #false
c.判断name变量对应的值是否以"Q"结尾,并输出结果
v = name.endswith('Q')
print(v) #true
d.将name变量对应的值中的"o",替换为"p",并输出结果
print name.replace("o","p")
e.将name变量对应的值根据"o"分割,并输出结果
v = name.split('o')
print(v) #此为不包括分隔符方式
f.请问上一题分割之后得到的值是什么类型(可选)
列表
g.将name变量对应的值变大写,并输出结果
v = name.upper()
print(v)
h.将name变量对应的值变成小写,并输出结果
v = name.lower()
print(v)
i.请输出name变量对应的值的第二个字符?
print(name[1])
j.请输出name变量对应的值的前三个字符
print(name[0:3])
h.请输出name变量对应值的后2个字符
print(name[5:8])
name = " gouguoQ"
v = name[-2:]
print (v)
l.请输出name变量中的值"Q的索引的位置
name = " gouguoQ"
v = len(name)
for n in range(v):
if (name[n]) != "Q":
continue
else:
print (n,name[n]) # 7 Q
m.获取子序列,仅不包含最后一个字符,如:woaini则获取woain root则获取roo
name = " gouguoQ"
print (name[0:-1])
21、字符串是否可以迭代对象?如果可以请使用for循环每一个元素?
#可以
test = "中华人民共和国"
for ts in test :
print(ts)
22、请用代码实现 a.利用下划线将列表的每一个元素拼接成字符串 li = "gouguoqi"
li = "gouguoqi"
v = "_".join(li)
print (v) #g_o_u_g_u_o_q_i
b.利用下划线将列表的每一个元素拼接成字符串 li = ['gou', 'guo', 'qi']
li = ['gou','guo','qi']
v = "_".join(li)
print (v) #gou_guo_qi
23、在python2和3中range有啥区别
在python2.7里面,range可以直接帮我们打印出来范围内的数字,这个就有缺点了,比如我打印出来1万个数字,它得先把一万个数字打印出来,这个时候我们得等着了。并且占用很多内存 在python3里面,range创建之后,并不会把这些数字打印出来,而是在什么时候调用的时候才去一个一个的打印,比如我for循环调用的时候才会挨个打印,这样就省内存了
24、实现一个整数加法计算器: content = input("请输入内容:")
如:5 + 9或3 + 6或9008 + 2566
v =content.split('+')
n1 = int(v[0])
n2 = int(v[1])
n3 = n1 + n2
print (n1,'+',n2,'=',n3)
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)
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 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()
while True:
code = check_code()
print (code)
v = input('请输入验证码>>>>')
v1 = v.upper()
if v1 == code:
print ('验证码正确')
break
else:
pass
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:
pass
用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 + b
if v1 == "q" or v2 == "q" or v3 == "q" or v1 == "Q" or v2 == "Q" or v3 == "Q":
break
print(s) 请输入你的名字q 请输入你的密码ww 请输入你的邮箱ee aa bb cc dd dd dd ff ff ff q ww ee
python ----字符串基础练习题30道的更多相关文章
- python基础练习题30道
1.执行python脚本的两种方式 答:1>可以在python /home/xxxx.py 2>cd /home ./xxxx.py 因为py脚本里面指定了python解释器的位置 ...
- Python之基础练习题
Python之基础练习题 1.执行 Python 脚本的两种方式 2.简述位.字节的关系 解:8位是一个字节 3.简述 ascii.unicode.utf-8.gbk 的关系 4.请写出 “李杰” 分 ...
- python字符串基础知识
1.python字符串可以用"aaa",'aaa',"""aaa""这三种方式来表示 2.python中的转义字符串为" ...
- Python一些基础练习题
可变的数据类型:list, dict, set(可修改其中的元素) 不可变的数据类型:str, tuple 重点:str, list, dict (1).推导式练习 # 利用列表推导式: 找出100以 ...
- Python字符串基础一
下一篇:Python 序列通用操作介绍 写在前面 下学期开始上计算机网络的课程,现在已经在看相关书籍,希望结合python写出一个网络爬虫程序.利用学习C++后的空余时间来看看Python并在这里总结 ...
- Python字符串基础操作
==============字符串======== >>> s1='www.baidu.com' >>> type(s1) <type 'str'> & ...
- 第3.6节 Python字符串基础知识
一. 引言 前面第二章已经接单介绍了字符串,本来计划讲完列表解析和字典解析再来精讲字符串的内容,但发现要讲列表解析和字典解析需要介绍迭代器和生成器,这个概念比较复杂,老猿还需要复习和验证一下才能完全掌 ...
- 【Python】基础练习题-1
#练习1:从键盘输入两个数,并比较其大小,直到输入e/E退出程序 while 1: input_number=raw_inut("please input two numbers,enter ...
- 【python语法基础-经典练习题】python语法基础练习题01---商场打折
# 1.一家商场在降价促销.如果购买金额50-100元(包含50元和100元)之间,会给10%的折扣(打九折),# 如果购买金额大于100元会给20%折扣.编写一程序,询问购买价格,再显示出折扣(%1 ...
随机推荐
- 有效利用1 on 1
2019-01-08 16:32:13 感觉1 on 1是浪费时间? 感觉1 on 1时没啥好说? 感觉老板总是不想1 on 1? 怎样才能 升职加薪? 一切都从有效的1 on 1开始!! 什么是1 ...
- 网格视图GridView的使用
网格视图GridView的排列方式与矩阵类似,当屏幕上有很多元素(文字.图片或其他元素)需要按矩阵格式进行显示时,就可以使用GridView控件来实现. 本文将以一个具体的实例来说明如何使用GridV ...
- PHP中json数组与对象的问题
在PHP后端,对于数组和对象的区分不是很大,主要用到的数组居多,而PHP提供接口时响应的一般是json数据(为什么使用json呢,总体来说就是体积小速度快).但是前端对数组对象很'敏感',所以对PHP ...
- [jQuery] 通过ajax保存到服务器,成功显示信息.
保存数据到服务器,成功时显示信息. jQuery 代码: $.ajax({ type: "POST", url: "some.php", data: " ...
- 雷林鹏分享:XML 树结构
XML 树结构 XML 文档形成了一种树结构,它从"根部"开始,然后扩展到"枝叶". 一个 XML 文档实例 XML 文档使用简单的具有自我描述性的语法: To ...
- clustering
搞了将近一年的单细胞,聚类也是自认为得心应手了,自信满满. 但是多半是跑软件,对聚类的深层次的思想不甚了了. Google了一下clustering,看了一篇文章,突然了解到了clustering的算 ...
- 0.1.2 max_element和min_element的用法
找到的位置都是第一个最大(小)的元素,即存在多个相同大小的元素的时候找到的是第一个. 返回的是指针(元素地址). printf("%d\n",*max_element(a,a+n) ...
- ansible管理windows (发送文件)
https://github.com/ansible/ansible/raw/devel/examples/scripts/ConfigureRemotingForAnsible.ps1 环境: 服务 ...
- vue 关于npm run build 的小问题
vue项目使用npm run build命令进行打包操作,打包之后试运行报错,报错为: 且命令行警告信息为: 解决办法: 找到项目目录下的config文件夹里的index.js文件,将build对象下 ...
- spring cloud服务发现注解之@EnableDiscoveryClient与@EnableEurekaClient区别
在使用服务发现的时候有两种注解, 一种为@EnableDiscoveryClient, 一种为@EnableEurekaClient, 用法上基本一致,下文是从stackoverflow上面找到的对这 ...