1. 1、执行python脚本的两种方式
  1. 一种是点开始--运行--cmd 方式(这个操作需要先配置好环境变量path路径)之后运行python
  2. 二是直接进安装目录 运行tython软件运行。pycharm
  1. 2、简述位、字节的关系
  1. 位:计算机的计算单位,代表0或者1
  2. 字节:一字节相当于8
  1. 3、简述asciiunicodeuft-8gbk的关系
  1. ascii 英文编码,8个二进制位代表一个字母,总共可以有28次方减去1个等于255
  2.  
  3. gbk是中文编码,是用的16个二进制代表一个汉字,有点浪费空间
  4.  
  5. uft-8也是中文编码,也是用的16个二进制代表一个汉字,但是能用8位表示就用位了
  1.  
  2. 4、请写出“李杰”分别用utf-8gbk编码所占的位数
  1. len(bytes(name,encoding='utf-8'))
  2. 6
  3. len(bytes(name,encoding='gbk'))
  4. 4
  1. 5python单行注释和多行注释分别用什么?
  1. 单行注释:#
  2. 多行注释 """ 开始 """结束
  1. 6、声明变量注意事项有哪些?
  1. 变量必须由数字,字母,下划线组成,不能以数字开头,不能用关键字,还有系统内置函数。
  1. 7、如有以下变量n1 = 5,请使用int提供的方法,得到该变量最少可以用多少个二进制位表示
  1. n1 = 5
  2. v = n1.bit_length()
  3. print (v) #
  1. 8、布尔值分别有什么?
  1. True False
  1. 9、阅读代码,请写出执行结果
  1. a = "gouguoqi"
  2. b = a.capitalize()
  3. print (a)
  4. print (b)
  1.  
  1. gouguoqi
  2. Gouguoqi
  1. 10、写代码,有如下变量,请按照要求实现每个功能
    name = " gouguoQ "
    a.移除name变量对应值的两边的空格,并输出移除后的内容
  1. v = name.strip()
  2. print(v)
  1. b.判断name变量对应的值是否以"go"开头,并输出结果
  1. v = name.startswith('go')
  2. print(v) #false
  1. c.判断name变量对应的值是否以"Q"结尾,并输出结果
  1. v = name.endswith('Q')
  2. print(v) #true
  1. d.将name变量对应的值中的"o",替换为"p",并输出结果
  1. print name.replace("o","p")
  1.  
  2. e.将name变量对应的值根据"o"分割,并输出结果
  1. v = name.split('o')
  2. print(v) #此为不包括分隔符方式
  1. f.请问上一题分割之后得到的值是什么类型(可选)
  1. 列表
  1. g.将name变量对应的值变大写,并输出结果
  1. v = name.upper()
  2. print(v)
  1. h.将name变量对应的值变成小写,并输出结果
  1. v = name.lower()
  2. print(v)
  1. i.请输出name变量对应的值的第二个字符?
  1. print(name[1])
  1. j.请输出name变量对应的值的前三个字符
  1. print(name[0:3])
  1. h.请输出name变量对应值的后2个字符
  1. print(name[5:8])
  1. name = " gouguoQ"
  2. v = name[-2:]
  3. print (v)
  1. l.请输出name变量中的值"Q的索引的位置
  1. name = " gouguoQ"
  2. v = len(name)
  3. for n in range(v):
  4. if (name[n]) != "Q":
  5. continue
  6. else:
  7. print (n,name[n]) # 7 Q
  1. m.获取子序列,仅不包含最后一个字符,如:woaini则获取woain root则获取roo
  1. name = " gouguoQ"
  2. print (name[0:-1])
  1. 21、字符串是否可以迭代对象?如果可以请使用for循环每一个元素?
  1. #可以
  2. test = "中华人民共和国"
  3. for ts in test :
  4. print(ts)
  1. 22、请用代码实现
  2.  
  3. a.利用下划线将列表的每一个元素拼接成字符串 li = "gouguoqi"
  1. li = "gouguoqi"
  2. v = "_".join(li)
  3. print (v) #g_o_u_g_u_o_q_i
  1. b.利用下划线将列表的每一个元素拼接成字符串 li = ['gou', 'guo', 'qi']
  1. li = ['gou','guo','qi']
  2. v = "_".join(li)
  3. print (v) #gou_guo_qi
  1. 23、在python23range有啥区别
  1. python2.7里面,range可以直接帮我们打印出来范围内的数字,这个就有缺点了,比如我打印出来1万个数字,它得先把一万个数字打印出来,这个时候我们得等着了。并且占用很多内存
  2.  
  3. python3里面,range创建之后,并不会把这些数字打印出来,而是在什么时候调用的时候才去一个一个的打印,比如我for循环调用的时候才会挨个打印,这样就省内存了
  1.  
  2. 24、实现一个整数加法计算器:
  3.  
  4. content = input("请输入内容:")
    如:5 + 93 + 69008 + 2566
  1. v =content.split('+')
  2. n1 = int(v[0])
  3. n2 = int(v[1])
  4. n3 = n1 + n2
  5. print (n1,'+',n2,'=',n3)
  1. 25.计算用户输入的内容中有几个十进制小数?几个字母?
  2.  
  3. 如: content = input ('请输入内容:') #如:adsffjjhb87902kdjhs-+9802jkl

思路是:定义2基数都是0,一个是字母的一个是数字的

把字符串挨个打印出来,打印出来一个,判断一个,如果是数字,就把数字的基数加一,如果是字母就把字母的基数加一,就不是数字也不是字母,就pass,最后打印出num  zimu

  1. content = input('请输入内容:计算十进制小数个数和字母个数 ')
  2. num = 0
  3. zimu = 0
  4. for n in content:
  5. if n.isdecimal() == True:
  6. num+=1
  7. # print ('数字个数 ',(num))
  8. elif n.isalpha() == True:
  9. zimu+=1
  10. # print ('字母个数',zimu)
  11. else:
  12. pass
  13. print ('数字个数 ',(num))
  14. print ('字母个数',zimu)
  15.  
  16. C:\python35\python3.exe D:/pyproject/day11数据类型的方法/str-way.py
  17.  
  18. 请输入内容:计算十进制小数个数和字母个数 56gou<<<ijh78
  19.  
  20. 数字个数 4
  21.  
  22. 字母个数 6
  1.  
  2. 26、简述int9等数字 以及 str"xxoo" 等字符串的关系?
  1. int就是数字类型,str就是字符串类型,xxoo就是字符串
  2.  
  3. int str都是类,类型, 9 xxoo这些都是根据类创建的对象
  1. 27、制作趣味模板程序
  2.  
  3. 需求:等待用户输入名字、地点、爱好、根据用户的名字和爱好进行任意显示
  4.  
  5. 如:敬爱可亲的xxxx,最喜欢在xxxx地方干xxxx
  1. name = input("请输入你的名字: ")
  2. place = input("请输入你经常去的地方: ")
  3. like = input("请输入你平时的爱好: ")
  4. print('猥琐的', name, ',', '最喜欢在', place, '地方', like)
  5.  
  6. test = "猥琐的{0},最喜欢在{1}地方干{2}"
  7. name = input("请输入你的名字: ")
  8. place = input("请输入你经常去的地方: ")
  9. like = input("请输入你平时的爱好: ")
  10. v = test.format(name, place, like)
  11. print(v)
  1. 28、制作随机验证码,不区分大小写
  2.  
  3. 流程:
  4.  
  5. - 用户执行程序
  6.  
  7. - 给用户显示需要输入验证码
  8.  
  9. - 用户输入的值
  10.  
  11. 用户输入的值和显示的值相同时显示正确的信息:否则继续生成验证码等待用户输入
  12.  
  13. 生成随机验证码代码示例:
  1. def check_code():
  2. import random
  3. check_code = ''
  4. for i in range(4):
  5. current = random.randrange(0,4)
  6. if current != i:
  7. temp = chr(random.randint(65,90))
  8. else:
  9. temp = random.randint(0,9)
  10. check_code += str(temp)
  11. return check_code
  12. code = check_code()
  13. print(code)
  1.  
  1. def check_code():
  2. import random
  3. check_code = ''
  4. for i in range(4):
  5. current = random.randrange(0,4)
  6. if current != i:
  7. temp = chr(random.randint(65,90))
  8. else:
  9. temp = random.randint(0,9)
  10. check_code += str(temp)
  11. return check_code
  12. code = check_code()
  13. while True:
  14. code = check_code()
  15. print (code)
  16. v = input('请输入验证码>>>>')
  17. v1 = v.upper()
  18. if v1 == code:
  19. print ('验证码正确')
  20. break
  21. else:
  22. pass
  1. 29、开发敏感词语过滤程序,提示用户输入内容,如果用户输入的内容中包含特殊的字符:
  2.  
  3. "苍井空" "东京热" 则将内容替换为***

思路是:创建2个变量v1  v2,用find方法来判断用户输入的字符串里面是否有敏感词,有的话find的值就不是-1,只有find的值是-1的时候才是没有敏感词的

然后用if判断,如果2个值都等于-1,才证明不包含定义的2个敏感词,就正常打印,如果包含一个敏感词或者是包含2个敏感词都包含,就执行替换的操作

替换操作思路是,先替换苍井空。替换完成之后,给它赋值一个新的变量名字,再把新的变量里面的东京热再次替换下,最后打印出来最后的变量就是2者都替换过了的结果

  1. shuru = input("请输入字符串")
  2. v = shuru.find('苍井空')
  3. v1 = shuru.find('东京热')
  4. if v == -1 and v1 == -1:
  5. print (shuru)
  6. elif v != -1 or v1 != -1:
  7. shuru1 = shuru.replace('苍井空','*****')
  8. shuru2 = shuru1.replace('东京热','*****')
  9. print (shuru2)
  10. # elif v1 != -1:
  11. # shuru.replace('东京热','*****')
  12. # shuru1 = shuru.replace('东京热','*****')
  13. # print (shuru1)
  14. else:
  15. pass

用in来实现其实更简单些,代码如下

如果有敏感词的话就题把敏感词替换成*****并且赶紧退出,没有敏感词的话可以继续输入

  1. while True:
  2. name = input('请输入内容:')
  3. if "苍井空" in name or "东京热" in name:
  4. v = name.replace('苍井空', '*****')
  5. v1 = v.replace('东京热', '*****')
  6. print(v1)
  7. exit()
  8. else:
  9. print(name)
  1. 30、制作表格
  2.  
  3. 循环提示用户输入:用户名、密码、邮箱(要求用户输入的长度不能超过20个字符,如果超过则只有前20个字符有效),如果用户输入q或者Q表示不再继续输入,将用户的内容一表格形式打印
  1. s = ""
  2. while True:
  3. v1 = input('请输入你的名字')
  4. v2 = input('请输入你的密码')
  5. v3 = input('请输入你的邮箱')
  6. v4 = v1[0:19]
  7. v5 = v2[0:19]
  8. v6 = v3[0:19]
  9. test = "{0}\t{1}\t{2}\n"
  10. v = test.format(v4, v5, v6)
  11. b = v.expandtabs(20)
  12. s = s + b
  13. if v1 == "q" or v2 == "q" or v3 == "q" or v1 == "Q" or v2 == "Q" or v3 == "Q":
  14. break
  15. print(s)
  16.  
  17. 请输入你的名字q
  18.  
  19. 请输入你的密码ww
  20.  
  21. 请输入你的邮箱ee
  22.  
  23. aa bb cc
  24.  
  25. dd dd dd
  26.  
  27. ff ff ff
  28.  
  29. q ww ee

python ----字符串基础练习题30道的更多相关文章

  1. python基础练习题30道

    1.执行python脚本的两种方式 答:1>可以在python /home/xxxx.py 2>cd /home    ./xxxx.py  因为py脚本里面指定了python解释器的位置 ...

  2. Python之基础练习题

    Python之基础练习题 1.执行 Python 脚本的两种方式 2.简述位.字节的关系 解:8位是一个字节 3.简述 ascii.unicode.utf-8.gbk 的关系 4.请写出 “李杰” 分 ...

  3. python字符串基础知识

    1.python字符串可以用"aaa",'aaa',"""aaa""这三种方式来表示 2.python中的转义字符串为" ...

  4. Python一些基础练习题

    可变的数据类型:list, dict, set(可修改其中的元素) 不可变的数据类型:str, tuple 重点:str, list, dict (1).推导式练习 # 利用列表推导式: 找出100以 ...

  5. Python字符串基础一

    下一篇:Python 序列通用操作介绍 写在前面 下学期开始上计算机网络的课程,现在已经在看相关书籍,希望结合python写出一个网络爬虫程序.利用学习C++后的空余时间来看看Python并在这里总结 ...

  6. Python字符串基础操作

    ==============字符串======== >>> s1='www.baidu.com' >>> type(s1) <type 'str'> & ...

  7. 第3.6节 Python字符串基础知识

    一. 引言 前面第二章已经接单介绍了字符串,本来计划讲完列表解析和字典解析再来精讲字符串的内容,但发现要讲列表解析和字典解析需要介绍迭代器和生成器,这个概念比较复杂,老猿还需要复习和验证一下才能完全掌 ...

  8. 【Python】基础练习题-1

    #练习1:从键盘输入两个数,并比较其大小,直到输入e/E退出程序 while 1: input_number=raw_inut("please input two numbers,enter ...

  9. 【python语法基础-经典练习题】python语法基础练习题01---商场打折

    # 1.一家商场在降价促销.如果购买金额50-100元(包含50元和100元)之间,会给10%的折扣(打九折),# 如果购买金额大于100元会给20%折扣.编写一程序,询问购买价格,再显示出折扣(%1 ...

随机推荐

  1. Mac python3.6 安装即使用 psycopg2

    学习下python调用PostgreSQL数据库 首先需要安装 psycopg2 python3安装: pip install psycopg2-binary 官网地址: https://pypi.o ...

  2. Angular 学习笔记 Material

    以后都不会写 0 到 1 的学习记入了,因为官网已经写得很好了. 这里只写一些遇到的坑或则概念和需要注意的事情. Material Table 1. ng-content 无法传递 CdkColumn ...

  3. 安卓自动化测试——rf

    ${a} Get Text //android.widget.TextView[contains(@text,"历史位置")]/../../../android.widget.Li ...

  4. Eclipse安装lombok

    下载lombok 下载地址:https://projectlombok.org/downloads/lombok.jar 或者访问官网下载  https://projectlombok.org/ 安装 ...

  5. Go语言学习之5 进阶-排序、链表、二叉树、接口

    本节主要内容: 1. 结构体和方法2. 接口 1. 结构体和方法 (1). 用来自定义复杂数据结构     (2). struct里面可以包含多个字段(属性)     (3). struct类型可以定 ...

  6. 20165327 学习基础和C语言基础调查

    学习基础和C语言基础调查 一.关于技能 1. 你有什么技能比大多人(超过90%以上)更好? 根据数据来看,应该是短跑(几次测速50米平均时间6.5s),上学期的体测中短跑这项成绩在班上排前面,我们这个 ...

  7. Python Web简单加法器的实现--Python

    坚持写博客来记录学习过程,哪怕学习的东西多么简单!下面是python中cgi相关知识. Template.py:(模板引擎文件) #模板引擎def start_response(resp=" ...

  8. drf 认证、权限、限流、过滤、排序、分页器

    认证Authentication 准备工作:(需要结合权限用) 1. 需要使用到登陆功能,所以我们使用django内置admin站点并创建一个管理员. python manage.py creates ...

  9. optimizer(代码分析)

    torch.optim是里面是和优化算法相关的类.比如使用SGD算法用 optimizer = optim.SGD(net.parameters(),lr=1e-3) 这个地方要注意的是传入的第一个参 ...

  10. php 中文字符串反转

    /** * * 中文字符串倒序 * @param str $str * return str **/ function str_en_desc($str){ $len=mb_strlen($str); ...