Skip to content

Instantly share code, notes, and snippets.

@wataken44
Created March 14, 2012 23:16
Show Gist options
  • Save wataken44/2040305 to your computer and use it in GitHub Desktop.
Save wataken44/2040305 to your computer and use it in GitHub Desktop.
typing
#!/usr/bin/env python
# -*- coding: utf-8 -*-
""" typing.py
"""
from datetime import datetime
import random
import sys
import time
keys = ""
def init():
global keys
for i in range(26):
keys += chr(i + ord('A'))
keys += chr(i + ord('a'))
for i in range(10):
keys += chr(i + ord('0'))
keys += "~`!@#$%^&*()"
keys += " _+-={}[]|:;'<>,.?/"
keys += "\\" + "\""
def run():
global keys
correct = 0
for i in range(3):
sys.stdout.write(".")
sys.stdout.flush()
time.sleep(1)
print("")
start = datetime.now()
for i in range(10):
exp = "".join(random.sample(keys, 10))
print(i+1)
sys.stdout.write("$ "+exp+"\n> ")
ans = sys.stdin.readline().rstrip("\r\n")
if ans == exp:
print("o")
correct += 10
else:
sys.stdout.write("x ")
for k in range(10):
if k < len(ans) and exp[k] == ans[k]:
correct += 1
sys.stdout.write(" ")
else:
sys.stdout.write("^")
print("")
finish = datetime.now()
print("")
print("correct:" + str(correct) + "/ 100")
print("elapsed:" + str((finish - start).seconds))
def main():
init()
run()
if __name__ == "__main__":
main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment