python实现在线答题_python实现用户答题功能
python实战,用户答题分享给大家。
主要包含内容,文件的读取,更改,保存。不同文件夹引入模块。输入,输出操作。随机获取数据操作
随机生成算数表达式,用户输入答案,正确记录分数,错误返回0,并把用户分数记录到文本文件中,如用户名不存在着新建用户
myPythonFunction.py包含三个函数
#coding=utf-8
from random import randint
from os import remove,rename
#function 输入用户名字,获得用户得分,返回得分或者-1
def getUserScore(userName):
try:
f = open("userScores.txt","r")
msg = f.readline()
score=-1;
while len(msg):
msg = msg.strip('\n')
msgArr = msg.split(",")
if(msgArr[0]==userName):
score = msgArr[1]
break
msg = f.readline()
f.close()
return score
except IOError:
f=open("userScores.txt","w")
f.close()
return -1
#function 更新或者保存用户名字,用户得分
def updateUserPoints(userName,score):
temp = getUserScore(userName)
if(temp==-1):
f = open("userScores.txt","a")
msg = userName+","+str(score)+"\n"
f.write(msg)
f.close()
else:
temp = open("userScores.tmp","w")
f = open("userScores.txt","r")
msg = f.readline()
while len(msg):
msg = msg.strip('\n')
msgArr = msg.split(",")
if(msgArr[0]==userName):
msgArr[1] = str(score)
temp.write(msgArr[0]+","+msgArr[1]+"\n")
msg = f.readline()
f.close()
temp.close()
remove("userScores.txt")
rename("userScores.tmp","userScores.txt")
#function 获取随机生成的数学表达式 ,返回字符串
def getQuestionString():
operandList = []
operatorList = []
operatorDict=("+","-","*","**")
questionString = ''
for i in range(5):
operandList.append(randint(1,9))
for j in range(4):
operatorList.append(operatorDict[randint(0,3)])
for k in range(4):
questionString += str(operandList[k])+operatorList[k]
questionString +=str(operandList[4])
return questionString
mathGame.py作为主函数
# -*- coding:utf-8 -*-
import sys
if 'H:\\python\func' not in sys.path:
sys.path.append('H:\\python\\func')
import myPythonFunction as myfunc
print("请输入你的名字:")
use = input()
use=use.strip("\n")
count = 0
if(myfunc.getUserScore(use)==-1):
print("你是个新用户!")
myfunc.updateUserPoints(use,0)
else:
count = int(myfunc.getUserScore(use))
print("你当前分数为:",count)
while(1):
questionString=myfunc.getQuestionString()
result = eval(questionString)
print("问题:",questionString.replace("**","^"))
print("请输入你的答案:")
userResult = input()
userResult = userResult.strip("\n")
flag = True
if(userResult.startswith("-")):
userResult = userResult[1:]
flag = False
while((not userResult.isdigit()) and userResult!="exit"):
print("请输入数字,你的答案:")
userResult = input()
userResult = userResult.strip("\n")
if(userResult.startswith("-")):
userResult = userResult[1:]
flag = False
if(not flag):
userResult = "-"+userResult
if(userResult==str(result)):
print(1)
count = count+1
elif("exit"==userResult):
break
else:
print(0)
myfunc.updateUserPoints(use,count)
print("你当前分数为:",count)
print("谢谢进入,欢迎下次再来!")
文件目录结构,将myPythonFunction.py放到func文件夹中。userScores.txt存放用户名和相应的得分
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持萬仟网。
如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!
python实现在线答题_python实现用户答题功能相关推荐
- python解题_python实现用户答题功能
python实战,用户答题分享给大家. 主要包含内容,文件的读取,更改,保存.不同文件夹引入模块.输入,输出操作.随机获取数据操作 随机生成算数表达式,用户输入答案,正确记录分数,错误返回0,并把用户 ...
- 怎么用python做答题_python实现用户答题功能
python实战,用户答题分享给大家. 主要包含内容,文件的读取,更改,保存.不同文件夹引入模块.输入,输出操作.随机获取数据操作 随机生成算数表达式,用户输入答案,正确记录分数,错误返回0,并把用户 ...
- python实现登录功能_python实现用户登录功能模块
python实现登录功能模块#!/usr/bin/env python while True: user = raw_input('Please input username:') if user = ...
- python 屏幕录制_Python实现屏幕录制功能的代码
前段时间做视频时需要演示电脑端的操作,因此要用到屏幕录制,下载了个迅捷屏幕录制,但是没有vip录制的视频有水印且只能录制二分钟,于是鄙人想了下能不能通过万能的python来实现呢?经过一晚上的尝试发现 ...
- python syslog 接口_python接口测试之日志功能
之前在简书中看了一篇关于日志功能的文档,供大家参考:https://www.jianshu.com/p/62f7b49b41e7 Python通过logging模块提供日志功能,所以直接导入即可 im ...
- python 装机配置_Python实现自动装机功能案例分析
前言 提示:在管理服务器的过程中,发现有很多服务器在启动的过程中默认以PXE方式启动,这就导致我们无法将PXE装机程序放开到所有的交换机端口中,本文是以Python对dell服务器进行了一些控制,更多 ...
- python log日志_Python的log日志功能及设置方法
引入:Python中有个logging模块可以完成相关信息的记录,在debug时用它往往事半功倍 一.日志级别(从低到高): DEBUG :详细的信息,通常只出现在诊断问题上 INFO:确认一切按预期 ...
- python定时器 循环_Python循环定时服务功能(相似contrab)
Python实现的循环定时服务功能.类似于Linux下的contrab功能.主要通过定时器实现. 注:Python中的threading.timer是基于线程实现的.每次定时事件产生时.回调完响应函数 ...
- python秒杀神器_Python实现京东秒杀功能代码
本文实例为大家分享了Python实现京东秒杀功能的具体代码,供大家参考,具体内容如下 #Python 3.5 #coding:utf-8 #import scrapy from selenium im ...
- python 12306登录_Python 实现12306登录功能实例代码
下面一段代码给大家带来了python实现12306登录功能,具体代码如下所示: #!/usr/bin/env python import requests import urllib.parse im ...
最新文章
- 机器学习知识点(二十六)概率图模型条件随机场CRF
- 【外贸人必看骗术】和中东客户做生意
- 京东SSO单点登陆实现分析
- 微型计算机键盘上的西服的间称为,一台完整的微型计算机主要由主机箱. .键盘.鼠标及音箱.打印机组成....
- 【Hbase】HBase 更改表名
- 原生js调用json方法
- linux串口环形缓冲区,能不能讲解下串口环形缓冲区的概念?
- motion加树莓派打造实时监控
- poj 3368 Frequent values rmq
- hexo init报错
- 小D课堂 - 新版本微服务springcloud+Docker教程_1_01课程简介
- 模仿老乡鸡点餐小程序选择门店功能
- uboot如何驱动SD卡
- codec engine代码阅读四---CE_DIR/examples/ti/sdo/ce/examles/codecs/videnc_copy(转)
- CAD打断线条的快捷键是什么?CAD打断线条教程
- 利用Python提取PDF文件中的文本信息
- Java API连接Kerberos认证的HBASE
- 利用Python自制雷霆战机小游戏,娱乐编程,快乐学习!
- C#Base64编码
- 基于实时计算(flink)打造舆情分析平台——新华智云...
热门文章
- functions.php隐藏恶意代码,警惕WordPress主题functions.php包含的恶意代码
- 【数学建模】基于matlab改进量子行为的粒子群算法机组燃烧控制系统建模【含Matlab源码 1609期】
- 【回归预测】基于matlab布谷鸟算法优化BP神经网络回归预测(多输入单输出)【含Matlab源码 1555期】
- 【动力学】基于matlab GUI汽车动力学分析系统【含Matlab源码 1050期】
- 【通信】基于matlab Alamouti空频编码【含Matlab源码 801期】
- SPSS数据编码(图文+数据集)【SPSS 008期】
- mysqld restart service 卡_MySQL数据库之mysqld服务启动失败, Failed to restart mysqld.service: Unit not found....
- aws搭建深度学习gpu_选择合适的GPU进行AWS深度学习
- 计算机考医学考研方向,医学考研科目都有哪些方向
- Oracle的基本注意点