Boredom kills. Here's a package that gives you a daily dose of fun!
Project description
Python dailydose Package
Boredom kills. Here's a package that gives you a daily dose of fun!
Team Members
Installation
Install the dailydose module with pip.
Usage
Once installed, dailydose gives access to the package's 4 special features: today's news in different fields (per Vox Media), random fun facts, and the games of hangman and battleship. The variety of the collection is inspired by the traditional newspaper/magazine experience, in which both information and thought-provoking entertainment is regularly provided. This package is ideal for any program that operates on changing content or stimulating applications.
dailydose supports a command-line interface (CLI). To choose one of the above options, simply call:
$ python3 -m dailydose
Upon running the package, a main menu is displayed in which your options are listed. Access each feature by entering their corresponding menu number.
Fun Stuffs To Do
Fun Facts
-
To see a fun fact, press 1 when the main menu is prompted. A random fun fact from TheFactSite will be printed.
-
After that, you will be redirected to the main menu.
Newsfeed
-
To see today's news, press 2 when the main menu is prompted. Immediately after, you will be given a list of options to read about: Culture, Politics, Science, World, Technology, Environment, and Business. You also have the option to return to the main menu.
-
Select a field by entering the corresponding listed number. Today's top headlines in the chosen field, as published by Vox Media, as well as a link to read more are printed.
-
The content is sourced from their website and therefore changes accordingly.
-
Upon receiving the headlines, you will be redirected to the main menu.
Hangman Game
-
To play the hangman game, press 3 when the main menu is prompted.
-
You will then be asked to enter the length of the word you want to guess.
-
Upon guessing the correct word or losing the game, you will be redirected to the main menu.
Battleship Game
-
To play the battleship game, press 4 when the main menu is prompted.
-
You will then be asked to enter the board dimensions and ship size. You can also choose to use the default settings.
-
The game creates a dimension*dimension size board and keeps track of how many turns it takes for you to win! What do you think is the optimal strategy?
-
Upon winning or exiting the game, you will be redirected to the main menu.
Importing the Package
For example usage of the package, see example.py.
1. fact.get -- generate a list of random fun fact objects
fact.get(count=1, include_details=True)
Parameters
-
count: how many non-duplicate fun fact objects to return- default: 1
- possible values: [1, 100], inclusive
-
include_details: whether to return the detailed contents of the facts or only the headings- default: True
2. news.get_headlines -- generate a list of headlines
news.get_headlines(subject, titular)
Parameters
-
subject: category name in url slug format on Vox.com- possible values:
"culture","policy-and-politics","science-and-health","world","technology","energy-and-environment","business-and-finance"
- possible values:
-
titular: a user-friendly display name for the category name- possible values: any
str
- possible values: any
3. hang.hangman -- start an interactive hangman game
hang.hangman(num_letter=number_of_letters)
Parameters
num_letter: the length of word you want to guess- possible values: a string make up of numbers, the length of word acceptable is in between [
"4","10"], inclusive
- possible values: a string make up of numbers, the length of word acceptable is in between [
4. battleship.main -- start an interactive battleship game
battleship.main(ship_size="4", dimension="10")
Parameters
-
dimension: the size of the board (dimension * dimension)- default:
"10" - possible values: a string make up of numbers, the board dimension acceptable is in between [
"1","10"], inclusive
- default:
-
ship_size: the size of the hidden battleship- default:
"4" - possible values: a string make up of numbers, the ship size acceptable is in between [
"1",dimension], inclusive
- default:
Contribute
Source Code
Clone the package source code from GitHub repository.
Setup Virtual Environment
- Create a
pipenv-managed virtual environment and install all required dependencies by running the following command in the main project directory where thePipfileis:
pipenv install
- Activate the virtual environment:
pipenv shell
- Then you can test and modify the package!
Test the Package
- Run the tests from the main project directory:
python3 -m pytest
Build the Package
-
Delete the autogenerated
distdirectory if it exists. -
Delete the autogenerated
src/*.egg-infodirectory if it exists. -
Build the package by running the following command in the main project directory:
python3 -m build
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dailydose-0.1.1.tar.gz.
File metadata
- Download URL: dailydose-0.1.1.tar.gz
- Upload date:
- Size: 43.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
07964be959212443b3d7a694c2e67d1dd0fb8760ea33f0ea1ab49eb9b949be3a
|
|
| MD5 |
9a25994fab3937b436d32391e53d157b
|
|
| BLAKE2b-256 |
a4a0c0683b88e21586591c017aed1b74da69b11c25e6a1d09ed4fb7bb071f1e4
|
File details
Details for the file dailydose-0.1.1-py3-none-any.whl.
File metadata
- Download URL: dailydose-0.1.1-py3-none-any.whl
- Upload date:
- Size: 42.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b3474fe2a559cd86233f1bbe64f5da38421f1334e3054cd23900ad925364699d
|
|
| MD5 |
8c48dfc7e42f6c51ac812e1ef7b4e80f
|
|
| BLAKE2b-256 |
c7a22c22a7307885335bd461f0244a43c5db3e5e7cf8e9a0fc6c25d157c96823
|