700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 【Python】Python猜拳游戏 数字竞猜游戏小实例 随机密码注册 模拟用户登陆实例

【Python】Python猜拳游戏 数字竞猜游戏小实例 随机密码注册 模拟用户登陆实例

时间:2023-05-15 00:10:33

相关推荐

【Python】Python猜拳游戏 数字竞猜游戏小实例 随机密码注册 模拟用户登陆实例

目录

标准数据类型

如果条件语句

对于循环

而循环

标准数据类型

数字(数字)

String(字符串)

清单(列表)

元组(元组)

字典(字典)

数字:

用于存储数值。数据类型是不允许改变的,这就意味着如果改变数字数据类型得值,将重新分配内存空间

字符串:

蟒蛇中字符串被定义为引号之间的字符集合

列表:

可以将蟒蛇中的列表当成是普通的数组,它能保存任意数量,任意类型的蟒蛇对象。

也像字符串一样,列表支持下表和切片操作。

元组:

元组可以认为是“静态”的列表,与列表不同的是,元组一旦定义,就不可以改变。

字典:

字典是由键值(键值)对构成的映射数据类型,通过键值取值,不支持下标操作。

如果条件语句:

如果表达式的值为非0或者为布尔值True,则代码组if_suite被执行,否则就执行else_suite

结构体:

if expression:if_suiteelse:else_suite

实例:

#Author Scong# -*- coding utf-8 -*-# help()(1)if -0.0:print('yes') #不打印,任何值为0的数字都是Falseif [1,2]:print('yes') # 非空对象都是Trueif ' ':print('yes') #空格也是字符,所以条件为True(2)a = 10b = 20if a < b:smaller = aelse:smaller = bprint(smaller)# ||# ||等价于# ||# \/smaller = a if a < b else bprint(smaller)

随机密码注册登陆

#Author Scong# -*- coding utf-8 -*-# help()import randomimport stringimport getpassall_char = string.ascii_letters + string.digits# 随机产生密码def get_pass(num):result = ''for i in range(num):char = random.choice(all_char) # 随机生成密码result += charreturn result# data = (get_pass(num))#将随机生成的密码存储在变量data中# print(data)all_choice = """[0] 随机胜密码\n[1] 手动输入密码\n请选择:"""print("****** Please Regis First ******")get_name = input("Username:")choice_pass = int(input(all_choice))if choice_pass == 0:num = int(input("\n请输入你要生成的密码长度:"))data = (get_pass(num)) # 将随机生成的密码存储在变量data中print(data)print("\n用 户 为:", get_name)print("登陆密码是:", data)elif choice_pass == 1:get_passwd = input("Password:")print("\n用户为:", get_name)print("登陆密码是:", get_passwd)else:print("\033[31;1m请正确选择选项!!!\033[0m")exit()username = input("\nUsername:")password = getpass.getpass("Password:")if choice_pass==1:if username == get_name and password == get_passwd:print("\n\033[34;1mLogin Successful!\033[0m")else:print("\n\033[31;1mPassword or Username Erroe,Login Faild!\033[0m")elif choice_pass == 0:if username == get_name and password == data:print("\n\033[34;1mLogin Successful!\033[0m")else:print("\n\033[31;1mPassword or Username Erroe,Login Faild!\033[0m")

模拟用户登陆实例:

#Author Scong# -*- coding utf-8 -*-# help()import getpass # 导入模块# 进行用户注册print("Please register your username and password!")username = input("Username:")password = getpass.getpass("Password:")print("\nRegistered Successful !")# 进行用户登陆print("\nPlease Login!\n")name=input("Username:")passwd=getpass.getpass("Password:")#判断用户名以及密码if (name == username and passwd == password):print("Login Successful")elif passwd != password:print("Faild,Password mistake!")else:print("User not exist!!!")

注意:因为pycharm无法控制终端,所以在使用了getpass模块还是会显示明文密码,且还会有报错,(错误不影响调试)。

#如果想要看到效果,在linux的终端执行即可!的的的Windows用户可以在CMD终端执行!

对于循环:

数字竞猜:

#Author Scong# -*- coding utf-8 -*-# help()import randomnumber = random.randint(1,10)#三次机会进行数字竞猜for i in range(3):num = int(input("Guess a number(1-10):"))if num > number:print("猜大了!")elif num == number:print("恭喜,猜对了!")breakelse:print("猜小了!")print("The number is:",number)'''

而循环:

猜拳游戏(三局两胜制)

#Author Scong# -*- coding utf-8 -*-# help()import randomprint("\t**************************")print("\t* *")print("\t*Hey Welcome!*")print("\t* 游戏采用是三局两胜制 *")print("\t* GoodLuck Have Fun! *")print("\t* *")print("\t**************************")mode = ['剪刀', '石头', '布']win_list = [['石头', '剪刀', ], ['剪刀', '布'], ['布', '石头']]prompt = """\t[0] 剪刀\t[1] 石头\t[2] 布\t请选择出拳的姿势:"""player_win = 0computer_win = 0while True:computer = random.choice(mode)ind = int(input(prompt))if ind > 2:print("\t\033[31;1m你的输入有误,请重新输入\033[0m")continueelse:player = mode[ind]#判断出拳胜负者以及胜利次数统计:print(" \n ****** Result ******")print("\nPlayer:%s,Computer:%s" % (player, computer))if player == computer:print("\t\033[32;1m平局!再来一次!\033[0m")elif [player,computer] in win_list:print("'\t\033[31;1m甘拜下风,YOU WIN!!!\033[0m")player_win += 1else:print("'\t'\n\033[34;1m手气不佳,YOU LOSE!!!\033[0m")computer_win += 1#根据统计的胜负次数,判断三局两胜制谁胜谁负:print("\nPlayer Win Count:",player_win,"\tComputer Win Count:",computer_win )if player_win >= 3 and computer_win < 3:print("\n\033[31;1m****** Player Win,Game Over!!! ******\033[0m")print("\n\033[31;1m****** Bye ******\033[0m")exit()elif computer_win >= 3 and player_win < 3:print("\n\033[35;1m****** Computer Win,GookLuck!!! ******\033[0m")print("\n\033[35;1m******Bye ******\033[0m")exit()

本文旨在提供参考,如有错误,欢迎大家指正。帮助编者不断的改进!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。