- 论坛徽章:
- 0
|
本帖最后由 wohoohoo 于 2013-04-30 10:18 编辑
- import string
- explain = """
- \t这是一个专业的青少年心理逆反测试,请按您的第一感觉答题。\n
- \t本测试题只能做为参考..
- """
- print "--------------------------------------------------------------"
- print explain
- print "--------------------------------------------------------------"
- list = ["1.你不喜欢按照别人说的去做吗? ",
- "2.你是否认为绝大多数规章制度都是不合理的,应该废除?",
- "3.如果父母再次叮嘱同一件事,你就感到厌烦吗?",
- "4.你欣赏与老师对着干的同学吗? ",
- "5.你经常考虑事情的反面吗?",
- "6.你是否对班干部指手画脚很讨厌,而故意不按他的要求去做? ",
- "7.老师和父母越是要你用功学习,你越是不想学吗?",
- "8.老师的话很多都是有漏洞、有问题的吗?",
- "9.你喜欢与众不同吗?",
- "10.违反学校里的某些规定使你感到一种快乐吗?",
- "11.别人的批评常常引起你的反感和愤怒吗? ",
- "12.你是否认为老师有很多缺点和错误?",
- "13.对别人不敢干的事你特别想尝试一下吗?",
- "14.你喜欢搞一些使被捉弄者痛苦或愤怒的恶作剧吗?",
- "15.你是否觉得父母和老师不应为一些小事大惊小怪小题大做?",
- "16.你蔑视权威吗?",
- "17.对批评你的人,你都感到讨厌和恼恨吗?",
- "18.你是否认为冒险是一种极大的快乐? ",
- # "19.你习惯上总是按照大多数人说的去做吗? ",
- "19.对你感到没有意思的事,别人怎么说你也不会好好去干吗?",
- "20.你特别爱做令人大吃一惊的事吗?",
- "21.人们对你很不重视吗?",
- "22.一旦决定了干一件事,不管别人指出这件事多么的成问题,你也不会改变主意吗?",
- "23.你总是对老师表扬的同学感到反感,不想理那个同学吗? ",
- "24.你喜欢干一些能引起很多同学注意的事吗?",
- "25.当你被别人说得火冒三丈时,你就会偏不照他说的去做吗?",
- "26.你讨厌那些当班干部的同学吗? ",
- "27.你认为上课时出现一些老师没有意料到的情况令人开心吗? ",
- "28.对伤了你的自尊心的人,你是否要给他添一些麻烦,让他感到你是不好惹的? ",
- "29.越是禁止的东西,你越想设法得到吗?"]
- count = 0
- in_str=""
- for s in list:
- while(len(string.strip(in_str))==0): #如果什么都没有输入,就重复当前问题
- in_str = raw_input(s+"\n请输入Y or N:\n-->",)
- in_str=string.strip(string.lower(in_str)) #in_str返回的是字符串,需要去首尾空格,取第一个字母
- if in_str == "y":
- count += 1
- else:#其他的输入都当成No
- pass
- print "现在的分数是%d"%count
- in_str=""#记得将用户输入复位,准备下一个问题
-
- print "19.你习惯上总是按照大多数人说的去做吗? "
- in_str = raw_input("请输入Y or N:\n-->")
- in_str=string.strip(string.lower(in_str)) #in_str返回的是字符串,需要去首尾空格,取第一个字母
- if in_str == "n":#编译到这会报错"IndentationError: unexpected indent"
- count += 1
- else:#其他的输入都当成Yes
- pass
- print "现在的分数是%d"%count
- if count <=9:
- print """
- 总分在0至9分之间的孩子逆反心理很弱。只干并且只喜欢干该干的,不去干不该干的。
- """
- elif 10<=count <=20:
- print """
- 总分在10至20分之间的孩子存在一定的否定倾向。激动时可能丧失理智,意气用事,有时会做一些不该做的傻事。
- """
- else 21<=count <=30:
- print """
- 总分在21至30分之间的孩子有相当严重的逆反心理。所想的和所干的总是与众不同,
- 与习俗和规定不符。如果不清醒地意识到这一问题,并不努力加以克服,则只能是一个不受大家欢迎的独行者。
- """
复制代码 谢谢老师的热心解答。现还有几个问题向您请教。
1、你在每个字符前都加了"u"是不是转换为unicode?在我的环境里加了u后中文全是乱码。
2、再想请教的是list表里的问题,回答yes计一分,no不计分,唯一是19题不同,yes计0分,no计1分,我应该如何判断。我现在想出的笨办法就是在list外在用一个变量来代表19题。但我想总有更好的方法。
3、对用户的输入判断时,能解决用户不输入y or n,而是其他字符时,告知他一定要输入y or n吗
4、为什么我的count计数始终是1,不能累加,加了全局变量后编译又会报错。
5、上面的代码中运行到 " if in_str == "n":#编译到这会报错"IndentationError: unexpected indent" ",是什么原因呢?
以上问题麻烦你了。谢谢 |
|