python 练习题2
# 习题1:
# 设定一个用户名和密码,用户输入正确的用户名和密码,
# 则显示登录成功,否则提示登录失败,用户最多失败3次,
# 否则退出程序。
username="test"
password="test1234"
for i in range(3):
user_name=input("input the username:")
pass_word=input("input the password")
if user_name==user_name and pass_word==password:
print("login successfully!")
break
else:
print("wrong username or password!")
else:
print("input time is used out!")
方法2:
username="test"
password="test1234"
for i in range(3):
user_name=input("input the username:")
pass_word=input("input the password")
if user_name==user_name and pass_word==password:
print("login successfully!")
break
else:
print("wrong username or password!")
if i==2:
print("input time is used out!")
习题2:
# 自己实现一个函数,在一句话中查找某个单词的算法,
# 存在返回索引号,否则返回False
#
# 提示:使用句子中的坐标遍历句子的每一个位置,
# 使用查找单词的长度结合使用切片来查找单词。
# 例如:s[i:i+len(单词)]
sentence="I am a boy."
def find_word_index(sentence,word):
word_length = len(word)
for i in range(len(sentence)-word_length+1):
if sentence[i:i+word_length] == word:
return i
return -1 print(find_word_index(sentence,"boy")) # 判断的标准,你找到的位置,单词开始和单词结束的位置,判断单词的开始是0或者它的前面不是字母,且结束诶之的后面不是字母或者是句子的最后一个位置、
# 方法二:判断一个完整的单词
sentence = "I am good good good boy!" def find_word_index(sentence,word):
position_list =[]
word_length = len(word)
for i in range(len(sentence)-word_length+1):
for j in range(word_length):
if sentence[i+j] != word[j]:
break
else:
position_list.append(i)
return position_list print(find_word_index(sentence,"good"))
# 练习题:
# 随机生成一个整数,1-100之间
# 你最多猜5次,如果猜大了,提示大了
# 小了,提示小了,
# 猜对了,提示猜中。
# 5次都没猜中,就猜没猜中。
import random i=random.randint(1,100)
print(i) for j in range(5):
a = int(input("input a number"))
if a==i:
print("guess it right")
print("use",j+1, "times")
break
elif a>i:
print("it is too big")
continue
elif a<i:
print("it is too small")
continue
else:
print("input time is used out ,game over") # 使用while,计算随机数之和,超过100的时候,停止程序。
# # 随机数1-20的范围产生,要求记录一下产生的随机数,以及
# # 最后的和,以及随机数的个数。 import random
s=[]
sum=0
while 1:
i =random.randint(0,20)
print(i)
s.append(i)
sum+=i
print(sum)
if sum>100:
break
print("一共产生了%s 个随机数"%len(s))
print(sum)
print(s) s="asdf"
for i in range(len(s)):
print("基于长度遍历",s[i])
for j in s:
print("基于字符串遍历",j)
python 练习题2的更多相关文章
- Python练习题 028:求3*3矩阵对角线数字之和
[Python练习题 028] 求一个3*3矩阵对角线元素之和 ----------------------------------------------------- 这题解倒是解出来了,但总觉得 ...
- Python练习题 027:对10个数字进行排序
[Python练习题 027] 对10个数字进行排序 --------------------------------------------- 这题没什么好说的,用 str.split(' ') 获 ...
- Python练习题 026:求100以内的素数
[Python练习题 026] 求100以内的素数. ------------------------------------------------- 奇怪,求解素数的题,之前不是做过了吗?难道是想 ...
- Python练习题 025:判断回文数
[Python练习题 025] 一个5位数,判断它是不是回文数.即12321是回文数,个位与万位相同,十位与千位相同. ---------------------------------------- ...
- Python练习题 024:求位数及逆序打印
[Python练习题 024] 给一个不多于5位的正整数,要求:一.求它是几位数,二.逆序打印出各位数字. ---------------------------------------------- ...
- Python练习题 004:判断某日期是该年的第几天
[Python练习题 004]输入某年某月某日,判断这一天是这一年的第几天? ---------------------------------------------- 这题竟然写了 28 行代码! ...
- Python练习题-1.使用匿名函数对1~1000求和,代码力求简洁。
Python 练习 标签(空格分隔): Python Python练习题 Python知识点 一.使用匿名函数对1~1000求和,代码力求简洁. 答案: In [1]: from functools ...
- PYTHON练习题 二. 使用random中的randint函数随机生成一个1~100之间的预设整数让用户键盘输入所猜的数。
Python 练习 标签: Python Python练习题 Python知识点 二. 使用random中的randint函数随机生成一个1~100之间的预设整数让用户键盘输入所猜的数,如果大于预设的 ...
- python 基础 2.8 python练习题
python 练习题: #/usr/bin/python #coding=utf-8 #@Time :2017/10/26 9:38 #@Auther :liuzhenchuan #@File ...
- Python练习题2
如果真的想学精,学什么都不是好学的,如果真的想把Python学的出神入化,几乎自己想做什么都可以,就要下定恒心,坚持下去. 接下来继续更新Python练习题2,通过更新前一部的练习题让自己也学到了不少 ...
随机推荐
- 集合 Enumerable Enumerator yield
集合: 通过索引来访问成员,--引申到索引器 的使用 for foreach循环遍历 --引申到 IEnumerable IEnumerator(会引申到yield) 常用的集合操作,add, ins ...
- Python中基于socketserver实现并发的socket
1.基于TCP协议: 服务端: import socketserver class MyHandler(socketserver.BaseRequestHandler): def handle(sel ...
- tensorflow兼容处理 tensorflow.compat.v1
https://www.wandouip.com/t5i183316/ 引言 原来引用过一个段子,这里还要再引用一次.是关于苹果的.大意是,苹果发布了新的开发语言Swift,有非常多优秀的特征,于是很 ...
- qt 自定义窗口显示鼠标划过的轨迹
鼠标事件分为四种: 1.按下 2.抬起 3.移动 4.双击 鼠标事件继承与QWidget void mouseDoubleClickEvent(QMouseEvent *event) void mou ...
- 08Redis入门指南笔记(集群)
即使使用哨兵,此时的 Redis 集群的每个数据库依然存有集群中的所有数据,从而导致集群的总数据存储量受限于所有节点中,内存最小的数据库节点,形成木桶效应. 对 Redis 进行水平扩容,在旧版Red ...
- HZOJ matrix
完全没有思路,状压到死没调出来……吐槽一下这题目描述的好不清楚啊好多人都理解错题了…… 题解: 真的挺神仙的,因为有每列最多放1个的限制,所以考虑按列dp,设f[i][j]表示考虑前i列在[1,i]中 ...
- 深度学习的Xavier初始化方法
在tensorflow中,有一个初始化函数:tf.contrib.layers.variance_scaling_initializer.Tensorflow 官网的介绍为: variance_sca ...
- day3_python之函数参数
一.形参 在定义函数时,括号内的参数称为形参,特点:形参就是变量名 def foo(x, y): # x=1,y=2 print(x) print(y) 二.实参 在调用函数时,括号内的参数成为实参, ...
- H3C 传输层
- Laravel 服务提供者实例教程 —— 创建 Service Provider 测试实例
从某种意义上说,服务提供者有点类似HTTP控制器,HTTP控制器用于为相关路由注册提供统一管理,而服务提供者用于为相关服务容器提供统一绑定场所,此外服务提供者还可以做一些初始化启动操作.Laravel ...