random randint( this module can also choose an item at random from sequenceand shuffle list of items randomlyrandom choice(['life of brian''holy grail''meaning of life']'holy grailrandom choice(['life of brian''holy grail''meaning of life']'life of briansuits ['hearts''clubs''diamonds''spades'random shuffle(suitssuits ['spades''hearts''diamonds''clubs'random shuffle(suitssuits ['clubs''diamonds''hearts''spades'though we' need additional code to make this more tangible herethe random module can be useful for shuffling cards in gamespicking images at random in slideshow guiperforming statistical simulationsand much more we'll deploy it again later in this book ( in ' permutations case study)but for more detailssee python' library manual other numeric types so far in this we've been using python' core numeric types--integerfloating pointand complex these will suffice for most of the number crunching that most programmers will ever need to do python comes with handful of more exotic numeric typesthoughthat merit brief look here decimal type python introduced new core numeric typethe decimal objectformally known as decimal syntacticallyyou create decimals by calling function within an imported modulerather than running literal expression functionallydecimals are like floating-point numbersbut they have fixed number of decimal points hencedecimals are fixed-precision floating-point values for examplewith decimalswe can have floating-point value that always retains just two decimal digits furthermorewe can specify how to round or truncate the extra decimal digits beyond the object' cutoff although it generally incurs performance penalty compared to the normal floating-point typethe decimal type is well suited to representing fixed-precision quantities like sums of money and can help you achieve better numeric accuracy other numeric types