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.py 3

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.py gouguoQ

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

name = " gouguoQ"
v = name.startswith('go')
print (v) C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py False

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

name = " gouguoQ"
v = name.endswith('Q')
print (v) C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py True

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

name = " gouguoQ"
v = name.replace('g','p')
print (v) C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py poupuoQ

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.py GOUGUOQ

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

name = " gouguoQ"
v = name.lower()
print (v) C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py gouguoq

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

name = " gouguoQ"
v = name[2]
print (v) C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py o

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

name = " gouguoQ"
v = name[0:3]
print (v) C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py go

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

name = " gouguoQ"
v = name[-2:]
print (v) C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py oQ

l.请输出name变量中的值"Q的索引的位置

name = " gouguoQ"
v = len(name)
for n in range(v):
if (name[n]) != "Q":
continue
else:
print (n,name[n]) C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py 7 Q

m.获取子序列,仅不包含最后一个字符,如:woaini则获取woain  root则获取roo

name = " gouguoQ"
print (name[0:-1]) C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py gouguo

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

for n in "woaini":
print (n) C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py w o a i n i

只要能被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.py g_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.py gou_guo_qi

23、在python2和3中range有啥区别

在python2.7里面,range可以直接帮我们打印出来范围内的数字,这个就有缺点了,比如我打印出来1万个数字,它得先把一万个数字打印出来,这个时候我们得等着了。并且占用很多内存

在python3里面,range创建之后,并不会把这些数字打印出来,而是在什么时候调用的时候才去一个一个的打印,比如我for循环调用的时候才会挨个打印,这样就省内存了

24、实现一个整数加法计算器:

如:

     content = input("请输入内容:")   如:5+9或3+6或9008+2566

content = 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+33 22 + 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 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 C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py TGHM 请输入验证码>>>>dfgh AEP5 请输入验证码>>>>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:
pass C:\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 + 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道的更多相关文章

  1. python ----字符串基础练习题30道

    1.执行python脚本的两种方式 一种是点开始--运行--cmd 方式(这个操作需要先配置好环境变量path路径)之后运行python 二是直接进安装目录 运行tython软件运行.pycharm ...

  2. python基础练习题1

    深深感知python基础是有多么重要,Ljh说一定要多练题,so,我现在开始要每天打卡练习python.加油! 01:求‘1-100’的偶数和 #第一种解法: sum=0 num=0 while nu ...

  3. python基础练习题(九九乘法表)

    又把python捡起来了,动手能力偏弱,决定每日一练,把基础打好! ------------------------------------------------------------------ ...

  4. python基础练习题

    购物车程序 #!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2018/3/6 21:01 # @Author : hyang # @Si ...

  5. Python基础练习题100例(Python 3.x)

    1:题目:有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析:可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. 程序源 ...

  6. 08: python基础练习题

    1.while循环实现输出2 - 3 + 4 - 5 + 6 ... + 100 的和 # 使用while循环实现输出2 - 3 + 4 - 5 + 6 ... + 100 的和 s = 0 i = ...

  7. Python学习【day02】- Python基础练习题

    #!/usr/bin/env python # -*- coding:utf8 -*- # 执行Python 脚本的两种方式 # 答:①在windows的cmd窗口下 > D:/Python/p ...

  8. python基础练习题(题目 输出一个随机数。)

    day35 --------------------------------------------------------------- 实例050:随机数 题目 输出一个随机数. 分析:使用ran ...

  9. python基础练习题(题目 文本颜色设置)

    day23 --------------------------------------------------------------- 实例035:设置输出颜色 题目 文本颜色设置. 分析:不会, ...

随机推荐

  1. 《Gogoing》Alpha版会议总结

    一.开会的过程 首先大家对自己的任务进行了汇报,然后大家就当前最需要解决的问题提出解决方案,最后相互鼓励,相互帮助,探讨下一步该怎么做. 二.讨论的问题 百度地图API代码和界面代码为什么对接不上? ...

  2. StringBuffer的append方法比“+”高效

    在字符串的连接过程中StringBuffer的效率要比String高: string操作代码: String str = new String("welcome to "); st ...

  3. myeclipse从SVN检出项目报错

    今天是在公司实习的第一天,从SVN服务器检出项目后发现报错. 解决方法: 1. 右键项目,选择属性properties-->选择resource-->将others选中并换为UTF-8 2 ...

  4. ShowHand

    实验目的: Github基本源代码控制方法 利用Junit4进行程序模块的测试,回归测试 编码规范的考量 C/Java等基本程序设计语言的运用. 实验过程: import java.util.Arra ...

  5. ASP.NET MVC应用安全性(一)——自定义错误处理

    很多 ASP.NET  MVC 开发者都会写出高性能的代码,很好地交付软件,等等.但是却并没有安全性方面的计划. 有一种攻击是攻击者截获最终用户提交的表单数据,将其改变再将修改后的数据发送到服务器. ...

  6. Service Fabric

    Service Fabric 开源 微软的Azure Service Fabric的官方博客在3.24日发布了一篇博客 Service Fabric .NET SDK goes open source ...

  7. Laravel - 1

    Laravel - 1 Laravel是一个很强大又非常优雅的php框架,但是Laravel的很多组件都是由社区协作的结果,Composer是php开发的一个依赖管理工具,但是墙把绝大多数的开发者堵在 ...

  8. Golang的panic和recover

    panic 关键字panic的作用是制造一次宕机,宕机就代表程序运行终止,但是已经“生效”的延迟函数仍会执行(即已经压入栈的defer延迟函数,panic之前的). 为什么要制造宕机呢?是因为宕机不容 ...

  9. CentOS(6.8)7 安装 Mysql 5.7

    https://blog.csdn.net/zyw_java/article/details/70949596 https://blog.csdn.net/yzl11/article/details/ ...

  10. K3CLOUD新增用户

    1.在金蝶云之家对应的产品序列中新增用户 2.在CLOUD本地查询用户-同步注册用户后,云平台用户会同步至本地