python


higher or lower card game in python


I need to write some code which shows a random single number/card from 1-12, the player then guesses whether the next card will be higher or lower than the first card/number. (play your cards right british game) if they guess right they get another go, if they guess wrong (they say higher or lower and it's the opposite) they lose and the game ends. if they guess four in a row right they win.
I have a very rough idea of how to go about this.
Could you please lend a hand?
import random
guessesTaken = 0
print('Hello! I am going to show you a card, guess whether the next card is higher or lower, get four in a row to win!')
number = random.randint(1, 12)
number1 = random.randint(1, 12)
number2 = random.randint(1, 12)
number3 = random.randint(1, 12)
number4 = random.randint(1, 12)
#five variables for five cards, all random cards between 1 and 12
print('Well I am thinking of a card between 1 and 12, the first number is:')
print (number) #shows them first card
while guessesTaken < 5: #limit number of guesses to make game less than 4 to win?
print('Take a guess, is the next card higher or lower? Please enter a number from 1 to 12.')
guess = input()
guess = str(guess) # limit input to "h" or "l"?
guessesTaken = guessesTaken + 1 #increment guesses taken
if guess = h and guess !> number1:
print ("you lose")
break
if guess =l and guess !< number1:
print('you lose')
if guess = h and guess !< number1:
print ("well done")
#ask about next card
if guess =l and guess !> number1:
print('well done')
#ask about next card
if guess == number1:
print ('you lose it was neither higher nor lower')
break
#basically I know the middle comparison for values higher or lower for the four cards can be done with a loop, just not sure how, very new to this.
Well, lets make your code a little more pythonic...
import random
DECK_SIZE = 5
# See that it generates 5 unique random number from 1 to 12
# (not including 13) thus simulating a deck of cards,
# where cards cannot repeat. We add a None in the end to
# indicate end of deck
deck = random.sample(range(1, 13), DECK_SIZE) + [None]
# use of the zip method to create pairs of cards to compare
# (the final card will be a None, so we can see when cards ended)
for card,next_card in zip(deck[:-1],deck[1:]):
if next_card == None: # End of deck, user won the game
print("You won")
break
# we calculate the expected correct guess
# based on the pair of cards
correct_guess = "h" if next_card > card else "l"
# We get the user input
guess = input("card is {card} is next h or l? ".format(card=card))
# We verify if user input is the expected correct guess
if guess != correct_guess:
print("You lost, card was {next_card}".format(next_card=next_card))
break
I hope you can improve your python skills by studying this code and making changes to fulfill your needs. It uses a few python idiosyncrasies that may help you get some knowledge.

Related Links

Best Way to create a bounding box for object detection
Read csv from Amazon s3 using python2.7
Could someone explain this Python import error? Anaconda 3.5
Python Tor server. stem/flask not showing images in tor
Python3 Socket / Selector register more than one event
iPython sent as background process when bash script executed as subprocess
Matplotlib xticks as days
Renaming tuple column name in dataframe
Jupyter Notebook Toggle Scrolling using Magic Command
Multiple linear regressions according to first column in pandas
Passing tensorflow placeholders as function parameters
Python(3.6)-How can I create a demo program that will create an object from the VotingMachine class I have created?
Python and Plotly offline: create (empty) graph and add traces with for-loop
Installing python on Mac not working
Extracting values from a dataframe column with dtype 'o'
Theano tensor type keeps changing and won't let me pass data

Categories

HOME
swift
security
mql4
vb6
wildcard
firebase-app-indexing
google-tag-manager
fparsec
docker-swarm
survival-analysis
is-empty
rocketmq
histogrammar
gspread
urlencode
shader
dropbox
uiview
grub2
anychart
distance
marathon
fop
bcrypt
rhmap
version-numbering
hana-studio
android-vpn-service
clockwork
pyscripter
receipt
ocs
redhat-datavirt
codesys
elfinder
declare
alchemy.js
tic-tac-toe
google-account
excel-interop
service-fabric-stateful
paho
scalafx
3scale
onmouseover
broadcast
fedora20
fontconfig
static-code-analysis
jcreator
visual-studio-templates
bettercms
tomee
vst
uiprogressview
multifile-uploader
clob
spatial-query
achievements
selecteditem
qt-linguist
loopj
approval-tests
except
oai
scrollspy
jazz
sysfs
python-ggplot
cloudpebble
cocoascript
tcpreplay
ghostdoc
korma
wss
uipickerviewcontroller
osx-snow-leopard
haskell-platform
gridworld
iconv
digital-design
reporting-tools
feof
file-exists
ubuntu-11.04
surf
posting
task-management
revert
external-assemblies
castle-validators
database-diagramming

Resources

Mobile Apps Dev
Database Users
javascript
java
csharp
php
android
MS Developer
developer works
python
ios
c
html
jquery
RDBMS discuss
Cloud Virtualization
Database Dev&Adm
javascript
java
csharp
php
python
android
jquery
ruby
ios
html
Mobile App
Mobile App
Mobile App