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实现用户答题功能相关推荐

  1. 怎么用python做答题_python实现用户答题功能

    python实战,用户答题分享给大家. 主要包含内容,文件的读取,更改,保存.不同文件夹引入模块.输入,输出操作.随机获取数据操作 随机生成算数表达式,用户输入答案,正确记录分数,错误返回0,并把用户 ...

  2. python实现登录功能_python实现用户登录功能模块

    python实现登录功能模块#!/usr/bin/env python while True: user = raw_input('Please input username:') if user = ...

  3. 使用python实现问卷星自动答题功能——基础篇

    题主在学习的过程中,老是有人来让填问卷星,就觉得人填的很麻烦,于是就自己动手写了一个python脚本来实现自动填写问卷星 1.首先我们得学会使用python里面的一个库,selenium,这个库是用来 ...

  4. 有了代码怎么用python爬虫_python实现简单爬虫功能

    在我们日常上网浏览网页的时候,经常会看到一些好看的图片,我们就希望把这些图片保存下载,或者用户用来做桌面壁纸,或者用来做设计的素材. 我们最常规的做法就是通过鼠标右键,选择另存为.但有些图片鼠标右键的 ...

  5. python log函数怎么打_Python的log日志功能及设置方法

    python log函数怎么打_Python的log日志功能及设置方法_Elaine要当律师的博客-CSDN博客

  6. python编程用户登陆c_django实现用户登陆功能详解

    简介: Python下有许多款不同的 Web 框架.Django是重量级选手中最有代表性的一位.许多成功的网站和APP都基于Django. Django是一个开放源代码的Web应用框架,由Python ...

  7. python中文件最重要的功能是什么和接收数据_Python测试题

    Python 测试题 时间: 40 分钟 总分: 100 分 一.单项选择题(每题 3 分,共 60 分) 1 .如今,随着科技的发展和社会的进步,我国教育部在小学和初中都开设了编程课,大力普及中 小 ...

  8. 用python写注册登录界面web_用Python实现web端用户登录和注册功能

    这篇文章主要介绍了用Python实现web端用户登录和注册功能的教程,需要的朋友可以参考下 用户管理是绝大部分Web网站都需要解决的问题.用户管理涉及到用户注册和登录. 用户注册相对简单,我们可以先通 ...

  9. python123注册登录_用Python实现web端用户登录和注册功能的教程

    用户管理是绝大部分Web网站都需要解决的问题.用户管理涉及到用户注册和登录. 用户注册相对简单,我们可以先通过API把用户注册这个功能实现了: _RE_MD5 = re.compile(r'^[0-9 ...

最新文章

  1. UICollectionView的基本使用(1)
  2. 【PAT (Advanced Level) Practice】PAT (Advanced Level) Practice
  3. [T-ARA][Bo Peep Bo Peep]
  4. 天猫方糖 篇一:新版天猫放糖改造立体声
  5. github 和git_Google编码文档:Git和GitHub
  6. 小米9京东预约破百万!明日正式首销:售价2999元起
  7. Python 揭秘斐波那契定律,如何帮助码农分析股票?| 技术头条
  8. 根据id来实现小程序tab切换,
  9. 虚拟机中的linux系统联网,虚拟机上Linux系统上网设置
  10. 51nod-1548:欧姆诺姆和糖果
  11. matlab rand函数
  12. 数据加密 ---- SHA 加密
  13. flashplayer Debug下载地址
  14. 【RabbitMQ】基础四:路由模式(Routing)
  15. 计算机领域十大世界难题,世界四大科学难题是什么,什么是四大科学难题
  16. Django 链接sqlserver 简单教程
  17. 五年了还在原地踏步咋整?技术大佬给你整理了一套切实可行的方法论
  18. Android 壁纸设置和确认
  19. 【YbtOJ 线段树 - 2】公园遛狗
  20. 汇编——从一道题目浅谈分支结构

热门文章

  1. oopc——4.继承
  2. 从四个问题透析Linux下C++编译链接
  3. 从一盏路灯,看亿万级联接的智能之路
  4. 基于Flask开发网站--利用复选框进行批量操作
  5. 华为云发布“华为鲲鹏”培训认证体系,助力开发者“化鲲为鹏”
  6. Too many open files的四种解决办法
  7. 充满含金量的一场云原生Meetup,入场券免费发送中……
  8. AOS编排语言系列教程(五):创建安全组SecurityGroup
  9. oracle 交叉链接,Oracle里的交叉SQL语句写法-数据库专栏,ORACLE
  10. 网络协议osi模型_网络协议|OSI模型第二层数据链路层