User Name Password Register
DaniWeb IT Discussion Community
All
What is DaniWeb IT Discussion Community?
You're currently browsing the Python section within the Software Development category of DaniWeb, a massive community of 397,592 software developers, web developers, Internet marketers, and tech gurus who are all enthusiastic about making contacts, networking, and learning from each other. In fact, there are 2,873 IT professionals currently interacting right now! Registration is free, only takes a minute and lets you enjoy all of the interactive features of the site.
Please support our Python advertiser:
Views: 2200 | Replies: 8
Reply
Join Date: May 2007
Posts: 20
Reputation: Panarchy is an unknown quantity at this point 
Rep Power: 2
Solved Threads: 0
Panarchy's Avatar
Panarchy Panarchy is offline Offline
Newbie Poster

Starting a project in python (Game and quiz)

  #1  
May 13th, 2007
Please help me, I want to make a quiz in python (And a game, if I get the time), can someone help me?

I saw the topic projects for beginners, but it was a .dat file (which I opened using notepad 2), I don't know how to use a dat file with python, I am used to .py files.

And .html files.

Please help,

Panarchy
AddThis Social Bookmark Button
Reply With Quote  
Join Date: Oct 2004
Location: Mojave Desert
Posts: 2,408
Reputation: vegaseat will become famous soon enough vegaseat will become famous soon enough 
Rep Power: 9
Solved Threads: 173
Moderator
vegaseat's Avatar
vegaseat vegaseat is offline Offline
Kickbutt Moderator

Re: Starting a project in python (Game and quiz)

  #2  
May 13th, 2007
Welcome to DaniWeb and the interesting world of Python coding!

The Quiz.dat file is just a text file containing 6 lines per question. The first line is the correct answer code for the four possible answers (A, B, C, D), followed by the question and the four possible answers. For example ...
A
Which sport uses the term LOVE ?
Tennis
Golf
Football
Swimming
B
What is the German word for WATER ?
Wodar
Wasser
Werkip
Waski
C
What has eight bits ?
Word
ASCII
Byte
RAM
...
...
To work with it in Python, it is easiest to form a tuple/array of each question in a set order and put them in a list. I picked the order (question, answer1, answer2, answer3, answer4, answer_code). The reason I used a list of tuples is that you can shuffle them easily. You read the data file into your program as a list of text lines and then convert these to a list of the question tuples ...
  1. [('Which sport uses the term LOVE ?', 'Tennis', 'Golf', 'Football', 'Swimming', 'A'),
  2. ('What is the German word for WATER ?', 'Wodar', 'Wasser', 'Werkip', 'Waski', 'B'),
  3. ('What has eight bits ?', 'Word', 'ASCII', 'Byte', 'RAM', 'C'),
  4. ...]
Here is a short Python program to handle the formation of the list of tuples ...
  1. # read the mutliple choice quiz data file
  2. # reorganize into a list of tuples, each tuple has this order
  3. # (question, answer1, answer2, answer3, answer4, answer_code)
  4.  
  5. # read the appended text file as a list of lines
  6. fin = open("Quiz.dat", "r")
  7. lineList = fin.readlines()
  8. fin.close()
  9.  
  10. quiz_list = []
  11. for k, line in enumerate(lineList):
  12. tuple_complete = False
  13. line1 = line.strip()
  14. # build a tuple for each question
  15. if k % 6 == 0:
  16. answer_code = line1
  17. if answer_code == 'end':
  18. break
  19. if k % 6 == 1:
  20. question = line1
  21. if k % 6 == 2:
  22. answer1 = line1
  23. if k % 6 == 3:
  24. answer2 = line1
  25. if k % 6 == 4:
  26. answer3 = line1
  27. if k % 6 == 5:
  28. answer4 = line1
  29. tuple_complete = True
  30. if tuple_complete:
  31. tuple1 = (question, answer1, answer2, answer3, answer4, answer_code)
  32. print tuple1 # test
  33. quiz_list.append(tuple1)
  34.  
  35. print "-"*70
  36. #print quiz_list # for testing
  37. print "-"*70
  38.  
  39. # shuffle the list and display the first 10 question tuples
  40. import random
  41. random.shuffle(quiz_list)
  42. for k, quest in enumerate(quiz_list):
  43. if k < 10:
  44. print quest
Now its up to you to display the question, followed by the four possible answers titled A, B, C, D and ask the player to give the title letter of the correct answer. After the user gives the input, then you compare the letter with the letter of the correct answer.
Last edited by vegaseat : May 13th, 2007 at 2:44 pm.
May 'the Google' be with you!
Reply With Quote  
Join Date: May 2007
Posts: 20
Reputation: Panarchy is an unknown quantity at this point 
Rep Power: 2
Solved Threads: 0
Panarchy's Avatar
Panarchy Panarchy is offline Offline
Newbie Poster

Re: Starting a project in python (Game and quiz)

  #3  
May 13th, 2007
Thanks for that.

What should I write into the html?
Reply With Quote  
Join Date: May 2007
Posts: 20
Reputation: Panarchy is an unknown quantity at this point 
Rep Power: 2
Solved Threads: 0
Panarchy's Avatar
Panarchy Panarchy is offline Offline
Newbie Poster

Re: Starting a project in python (Game and quiz)

  #4  
May 14th, 2007
I am a bit of a noob. I have only just started learning python. Please help I don't understand this.
Reply With Quote  
Join Date: Oct 2004
Location: Mojave Desert
Posts: 2,408
Reputation: vegaseat will become famous soon enough vegaseat will become famous soon enough 
Rep Power: 9
Solved Threads: 173
Moderator
vegaseat's Avatar
vegaseat vegaseat is offline Offline
Kickbutt Moderator

Re: Starting a project in python (Game and quiz)

  #5  
May 14th, 2007
Originally Posted by Panarchy View Post
I am a bit of a noob. I have only just started learning python. Please help I don't understand this.

If you are that unfamiliar with Python, I would recommend to work yourself through a simple tutorial first, and then a few simple projects. The Quiz program is more of medium difficulty. You have to know about lists, tuples, random functions, file handling and so on.

Here is a good recommendation of tutorial sources posted a few days ago:
http://www.daniweb.com/techtalkforums/post363044-4.html

What dont you understand?

Editors note: This thread refers to http://www.daniweb.com/techtalkforum...161212-13.html
Last edited by vegaseat : May 14th, 2007 at 4:46 pm. Reason: note
May 'the Google' be with you!
Reply With Quote  
Join Date: May 2007
Posts: 20
Reputation: Panarchy is an unknown quantity at this point 
Rep Power: 2
Solved Threads: 0
Panarchy's Avatar
Panarchy Panarchy is offline Offline
Newbie Poster

Re: Starting a project in python (Game and quiz)

  #6  
Jun 8th, 2007
Thanks anyways. I will just learn C, then C++, then Java.
Reply With Quote  
Join Date: May 2007
Posts: 15
Reputation: ffao is an unknown quantity at this point 
Rep Power: 2
Solved Threads: 2
ffao ffao is offline Offline
Newbie Poster

Re: Starting a project in python (Game and quiz)

  #7  
Jun 8th, 2007
Originally Posted by Panarchy View Post
Thanks anyways. I will just learn C, then C++, then Java.


You're finding difficulties with Python and "just" moving to C? Let me warn you, you're walking into dangerous territory... C isn't nearly as simple as it sounds.
Reply With Quote  
Join Date: Feb 2007
Posts: 55
Reputation: fredzik is an unknown quantity at this point 
Rep Power: 2
Solved Threads: 1
fredzik fredzik is offline Offline
Junior Poster in Training

Re: Starting a project in python (Game and quiz)

  #8  
Jun 8th, 2007
Hi,

I also wanted to use other languages for a game etc that I wanted to do, so before I took on any language for what was needed I looked at how easy it would be for me to code my game in...C, C++, C#, Ruby, Perl, Java and while looking at these I accidently found Python...and thank goodness that I did! Some of these other codes can take 6 or 7 times longer to code with than Python and are 6 or 7 times more complicated to deal with! I've read where some math professors were involved in some complicated mathematical equations and dreaded using an equally complicated language like C to code it in...I've also read where people can take 7 or 8 months to code a project in say C where if they did the same thing in Python it would take only 2 weeks...so to say I'll just learn C etc like one is going to have an enjoyable steak lunch does not equate at all!

Believe me when I say that not every language is as easy to use as our beloved Python.

fredzik.
Reply With Quote  
Join Date: Nov 2007
Posts: 1
Reputation: atiqjaved is an unknown quantity at this point 
Rep Power: 0
Solved Threads: 0
atiqjaved atiqjaved is offline Offline
Newbie Poster

Re: Starting a project in python (Game and quiz)

  #9  
Nov 27th, 2007
wat does the quiz.dat file contain
Reply With Quote  
Reply

Only community members can participate in forum threads. You must register or log in to contribute.

Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)

 

DaniWeb Python Marketplace
Thread Tools Display Modes

Similar Threads
Other Threads in the Python Forum

All times are GMT -4. The time now is 6:09 pm.
Forum system based on vBulletin Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
©2003 - 2008 DaniWeb® LLC