栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python 日常总结

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python 日常总结

在练习python的过程中,顺便把一些题目分享给大家

设计一个剪刀、石头、布的游戏

让系统随机产生剪刀、石头、布,让用户与电脑进行竞猜。

我们可以让电脑产生的剪刀、石头、布分别为0,1,2
而用户也输入0,1,2进行剪刀、石头、布的输入

import random
player = int(input("请输入一个0-2的数字"))
computer = random.randint(0,2)
flag = "false"
if(computer==0 and player==1):
	flag = "true"
elif(computer==1 and player==2):
	flag = "true"
elif(computer==2 and player==0):
	flag = "true"
elif(computer == player):
	flag = "draw"

if(flag=="true"):
	print("玩家胜利")
elif(flag=="false"):
	print("电脑胜利")
elif(flag=="draw"):
	print("平局")

先是引用random的函数

简单来说就是引用random模块,然后利用random.randint()的方法在0,1,2三个数中取随机值。

同样用到random模块的题还有一道
设计一个猜单词的游戏,单词随机生成,然后乱序打乱后输出,由用户来进行拼写。
这其中会用到random中的random.choice()还有random.randrange()函数
先在一个列表中输入你想引入的单词
然后系统用random.choice()从列表中随机挑选出一个
利用While循环和randrange()的方法将原单词打乱 放入新单词中即可完成

 while 1:
  	import random# 	i = 0
 	list_one = ["apple","pencil","bread","orange","banana","phone","pen"]
 	reverse = ""
 	choose = random.choice(list_one)
 	right = choose
 	while choose:
 		poistion = random.randrange(len(choose))
 		reverse += choose[poistion]
 		choose=choose[:poistion]+choose[poistion+1:]
 	print("单词是%s"%reverse)
 	while 1:
 		word = input("请输入你猜的单词")
 		if(word == right):
 			print("成功")
 			break
		else:
			print("失败")
 	answer = input("是否继续")
 	if(answer=="n" or answer=="N"):
 		print("游戏结束")
 		break
数学中的几何问题

x,y=map(float,input("请输入x,y点").split())
if((x**2+y**2)**0.5>10):
	print("超出圆的范围")
else:
	print("在圆的范围")
判断循环语句

for循环
for each for in
for in ----- 遍历容器
for 变量 in 容器:
#缩进
#循环体
for in循环主要用于遍历可迭代对象(python是一种数据类型------容器)
求:遍历1-100
range() ---------- 范围的意思 ------ 前闭后开
range(参数) ---------------表示从0开始到参数结束打印此区间所有的整数,前闭后开
range(参数1,参数2)-------------表示打印参数1到参数2区间内的整数,前闭后开
range(参数1,参数2,step)------表示打印参数1到参数2区间内的整数,数据的变化随step的变化而
变化,默认的step的值为1,前闭后开
range(10) range(10,20) range(10,20,2)
break ------- 跳出循环
continue ---------- 继续循环


这道题如果能理解意思就并不是什么难点,甚至可以说这道题简单的不能再简单了,但是我当初没有读明白题目的意思,按照自己的意思写了一大段复杂的代码,之后才理解这道题原本的意思。


对于这种题目 我的思路一般是先做出半边图,然乎再将代码复制粘贴进行改动完成另一半。
这种题是会用到循环语句的,如何用循环语句去完成。
可以先将图画出来去找里面的规律,会发现每排的空格数是总行数减去当前行数。

while 1:
	number = int(input("请输入一个1到15的整数"))
	if(number<1 or number>15):
		print("输入错误,请重新输入")
	else:
		break
for i in range(1,number+1):
	space_number = number-i
	for j in range(0,space_number):
		print(" ",end="")
	count = 2*i-1
	for k in range(i,0,-1):
		print(k,end="")
	for l in range(2,i+1):
		print(l,end="")
	print("")


这类循环题,都是找规律的题

for i in range(1,9):
	space_number=5*(8-i)
	for j in range(0,space_number):
		print(" ",end="")
	for k in range(0,(2*i-1)//2):
		print(2**k,end="")
		if(2**k<10):
			print("    ",end="")
		elif(100>2**k>10):
			print("   ",end="")
		else:
			print("  ",end="")
	for k in range((2*i-1)//2,-1,-1):
		print(2**k,end="")
		if(2**k<10):
			print("    ",end="")
		elif(100>2**k>10):
			print("   ",end="")
		else:
			print("  ",end="")
	print("")
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/360304.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号