猫史档案馆


【Python作品分享】化学元素周期20+3【作品秀】

用户:如虎添翼2007如虎添翼2007查看:0 回复:1 评论:0 创建时间:2020-06-13T18:30:35


【作品展示】

center_image

 

【作品介绍】

化学元素周期表20+3,用于背诵,大家可以尝试一下。第一遍把所有的过一遍,然后把错的都考一遍,直到全部答对为止。(请放心,您不会在同一次运行中做到两次您已经做对的题。)

 

【作品源代码】

import random

list_20 = ['氢', '氦', '锂', '铍', '硼', '碳', '氮', '氧', '氟', '氖', '钠', '镁', '铝', '硅', '磷', '硫', '氯', '氩', '钾', '钙', '锰', '钡', '碘']
list_all = ['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne', 'Na', 'Mg', 'Al', 'Si', 'P', 'S', 'Cl', 'Ar', 'K', 'Ca', 'Mn', 'Ba', 'I']
wrong_list_20 = []
wrong_list_all = []
wrong_list_num = []
x = 22
y = 0

def check_if():
    if (chem_c == '氢'):
        return(0)
    if (chem_c == '氦'):
        return(1)
    if (chem_c == '锂'):
        return(2)
    if (chem_c == '铍'):
        return(3)
    if (chem_c == '硼'):
        return(4)
    if (chem_c == '碳'):
        return(5)
    if (chem_c == '氮'):
        return(6)
    if (chem_c == '氧'):
        return(7)
    if (chem_c == '氟'):
        return(8)
    if (chem_c == '氖'):
        return(9)
    if (chem_c == '钠'):
        return(10)
    if (chem_c == '镁'):
        return(11)
    if (chem_c == '铝'):
        return(12)
    if (chem_c == '硅'):
        return(13)
    if (chem_c == '磷'):
        return(14)
    if (chem_c == '硫'):
        return(15)
    if (chem_c == '氯'):
        return(16)
    if (chem_c == '氩'):
        return(17)
    if (chem_c == '钾'):
        return(18)
    if (chem_c == '钙'):
        return(19)
    if (chem_c == '锰'):
        return(24)
    if (chem_c == '钡'):
        return(55)
    if (chem_c == '碘'):
        return(52)
while True:
    if len(list_20) > 0:
        choose = random.randint(0, x)
        chem_c = list_20[choose]
        chem_d = list_all[choose]
        del list_20[choose]
        del list_all[choose]
        x -= 1
        choose = check_if()
        answer = input((('请问化学元素' + chem_c) + '的符号是?原子序数是?(答案用英文逗号隔开,若不会,可按回车键)'))
        answer_c = str((choose + 1))
        should_be_answer = ((chem_d + ',') + answer_c)
        if (answer == should_be_answer):
            print('恭喜,答对啦!')
        else:
            print(('很遗憾,答错了呢~,正确答案应该是:' + should_be_answer))
            wrong_list_20.append(chem_c)
            wrong_list_all.append(chem_d)
            wrong_list_num.append(answer_c)
    elif len(wrong_list_20) > 0:
        y = len(wrong_list_20) - 1
        choose = random.randint(0, y)
        chem_c = wrong_list_20[choose]
        chem_d = wrong_list_all[choose]
        del wrong_list_20[choose]
        del wrong_list_all[choose]
        choose = check_if()
        answer = input((('请问化学元素' + chem_c) + '的符号是?原子序数是?(答案用英文逗号隔开,若不会,可按回车键)'))
        answer_c = str((choose + 1))
        should_be_answer = ((chem_d + ',') + answer_c)
        if (answer == should_be_answer):
            print('恭喜,答对啦!')
        else:
            print(('很遗憾,答错了呢~,正确答案应该是:' + should_be_answer))
            wrong_list_20.append(chem_c)
            wrong_list_all.append(chem_d)
            wrong_list_num.append(answer_c)
    else:
        break

print("恭喜!本次训练过关了呢!")

    

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 1下一页
如虎添翼2007如虎添翼2007

额,这个可能做的有点麻烦……大家如果有简化的办法可以在讨论区告诉我呦!

点赞0


评论