# py-pays
**py-Pays** est un programme écrit en python, qui permet d'effectuer des traitements sur les informations relatives au pays
# <b style='text-transform:capitalize'>à</b> utiliser pour
+ ## rechercher un pays par
+ son nom
+ son code
+ Code d'appel
+ id selon l'ordre alphabétique du pays [1 - 254]
+ Monnaie
+ Continent
- ## connaitre les information relatifs a un pays comme
+ nombre d'habitant
+ superficie
+ drapeau
+ code pays
+ Point culminant
+ PIB par habitant
+ Monnaie
+ Continent
+ Capitale
+ . . . .
# Installation
tres simple à installer exercuter cette et la magie opére seule
```
pip install py-pays
```
> `important` <br>
aprés l'installation du **package**, vous devez télécharger **base de données** [ici](https://github.com/Tostenn/py-Pays/tree/main/Driver) et la mettre dans le **repertoire courant** de votre projet, cette **base de données** est un **driver** du **package**<br>
## **Driver**
il existe deux **Driver** pour le **package**
+ driver simple
> qui contient trois (3) attribute de recherche qui sont `id` identifiant, `nom` nom du pays, `code` code du pays, à télecharger [ici](https://github.com/Tostenn/py-Pays/raw/main/Driver/drive.dbs)
+ driver avancer
> qui contient trois (9) attribute de recherche qui sont `id` identifiant, `nom` nom du pays avec des fonctions avancer, `code` code du pays, `continant` contiant du pays, `monnaie` monnaie du pays, `code d'appel` du pays, `domaine` domaine web, `habitant` habitant, `superficie` superficie
à télécharger [ici](https://github.com/Tostenn/py-Pays/raw/main/Driver/drivers.dbs)
## Utilisation rapide
```
from pays import pays as p
# nouvelle instance de pays
pays = p.Pays(driver="driver")
# faire une requête pour récupérer le pays Côte d'ivoire
civ = pays.query('> civ')
# récupérer toutes les informations concernant ce pays
print(pays.info(civ))
```
# Syntaxe
il y a une synthaxe a utiliser pour béneficier plein du potentiel des algorithmes
<br>par exemple, si vous voulez
### rechercher à partir du nom du pays
pour cela, vous devez indiquer `$` suivi de l'élémenemnt à rechercher<br>
Exemple : `pays.query('$ ran')` renvoir tout les pays qui ont `ran` dans leur nom
### rechercher à partir du code du pays
pour cela, vous devez indiquer `>` suivi de l'élément à rechercher<br>
Exemple : `pays.query('> an')` renvoir tout les pays qui ont `an` dans leur code pays
### rechercher à partir de l'endentifant
pour cela, vous devez indiquer `_` suivi du numéro à rechercher<br>
Exemple : `pays.query('_ 53')` renvoir le pays qui correspondant à l'identifiant
> remarque : comme vous le savez il n'y a que 254 pays, par consequent indiquer un nombre qui n'ai pas dans cette intervalle [1 - 254 ] ne renverrait rien
## Avec le driver avancé
### rechercher à partir du continent
pour cela, vous devez indiquer `^` suivi de l'élément à rechercher<br>
Exemple : `pays.query('^ fr')` renvoir tout les pays qui sont sur un continent dont il `fr` dans le nom
### rechercher à partir de la monnaie
pour cela, vous devez indiquer `~` suivi de l'élément à rechercher<br>
Exemple : `pays.query('~ an')` renvoir tout les pays qui utilisent la monnaie dont il `an` dans le nom
### rechercher à partir du code d'appel
pour cela, vous devez indiquer `+` suivi du numéro à rechercher<br>
Exemple : `pays.query('+ 22')` renvoir le pays dont le code d'appel correspond `22` dans le nom
### rechercher à partir du domaine web
pour cela, vous devez indiquer `.` suivi du numéro à rechercher<br>
Exemple : `pays.query('+ ci')` renvoir le pays dont le domaine web correspond `ci` dans le nom
### rechercher à partir du nombre d'habitants
pour cela, vous devez indiquer `>>h` ou `<<h` suivi du numéro à rechercher<br>
Exemple : `pays.query('>>h 50000')` renvoir tout les pays dont le nombre d'habitants est supérieur a `50000` et `<<h` faire l'action inverse
### rechercher à partir de la superfice
pour cela, vous devez indiquer `>>s` ou `<<s` suivi du numéro à rechercher<br>
Exemple : `pays.query('>>s 50000')` renvoir tout les pays dont la superficie est supérieur à `50000` et `<<s` faire l'action inverse
## Fonction
`pays.info()` prend comme argument une liste de noms de pays et renvoir toutes les informations le concernant ex `pays.info(['France'])`
`pays.commandValidator()` prend comme argument une chaîne qui correspond la votre command. Renvoir true si la commande est bien formulée ex `pays.commandValidator('_ 53')`
`pays.query()` prend comme argument une chaîne qui correspond à votre commande et une liste qui corespond au attribut de selection
. Renvoir une liste selon la selection faite. ex `pays.query('_ 53',['nom','id'])`
```
# pour vérifier quel Driver vous utilisé
print(pays.driver)
# pour voir tous les attributs de selection disponible
print(pays.attr)
# pour voir toutes les commandes disponibles
print(pays.cmd)
```
`pays.commandfree()` prend comme argument une chaîne qui correspond à votre commande, mais cette fonction ne filtre pas la commande avec la syntaxe précédent donc vous pouvez utiliser les requêtes **`SQL`**, comme les ajouts, suppressions ou mise à jours, cette fonction est pour les professionnels en **`SQL`**, mais ne vous en faite pas si vous endommager votre **`Driver`** vous pouriez toujours le re-télécharger ex `pays.commandfree('select * from pays where id > 200')` cette requête nous renvoir les 54 derniers pays
# **Drapeau**
comment parler de pays sans evoqué leur couleur. J'ai pensais a vous et la **`class Drapeau: `** vous permet comme par magie de télécharger les drapeaux des différents **`pays`**
```
from pyPays.pays import Pays
from pyPays.drapeau import Drapeau
pays = Pays(driver='databases.dbs')
dr = Drapeau(pays,path='drapeau/')
res = dr.download(res)
print(res)
```
aprés initialisation de la class vous utilisez, la fonction `download` pour télécharger le drapeau la fonction renvoir un dictionnaire `{ nom pays : chemin du drapeau }`
merci pour votre lecture pour vous remercier et consolider vos acquis, un petit script de mise en forme de vos connaissance des commandes présenter
```
from pays.pays import Pays
from pays.drapeau import Drapeau
# nouvelle instance de pays
pays = Pays('drivers.dbs')
#coloer style
vt = '\x1b[32m'
bl = '\x1b[37m'
jn = '\x1b[33m'
rg = '\x1b[30m'
b = f'\x1b[38;5;{123}m'
dr = Drapeau(pays)
# faire une requête pour récupérer le pays Côte d'ivoire
status = lambda st = 'corret' : f'{f"commande {st}":-^60}'
print(f"driver : {pays.driver}")
while True:
cmd = input(bl+'requete pays : '+jn)
if cmd == 'end':break
if pays.commandValidator(cmd):
print(vt+status()+bl)
res = pays.query(cmd,['nom'])
print(f'{b}{res}')
cmd = input('télécharger le(s) drapeau(x) o/n : ')
if cmd == 'o':
res = dr.download(res)
print(f'{b}{res}')
else : print(rg+status('incorrect')+bl)
```
Raw data
{
"_id": null,
"home_page": "https://github.com/Tostenn/py-Pays",
"name": "py-pays",
"maintainer": "kouya tosten",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "pays,,traitement,,donn\u00e9s,,country,,big data,,analysis,,treatment",
"author": "kouya tosten",
"author_email": "kouyatosten@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/f8/64/6edf5b53b809281cc7ce5b3e18908c038aa8706294763550acd29c19e37b/py-pays-1.0.4.tar.gz",
"platform": null,
"description": "# py-pays\r\n**py-Pays** est un programme \u00e9crit en python, qui permet d'effectuer des traitements sur les informations relatives au pays\r\n\r\n# <b style='text-transform:capitalize'>\u00e0</b> utiliser pour\r\n\r\n+ ## rechercher un pays par\r\n + son nom\r\n + son code\r\n + Code d'appel\r\n + id selon l'ordre alphab\u00e9tique du pays [1 - 254]\r\n + Monnaie\r\n + Continent\t\r\n\r\n- ## connaitre les information relatifs a un pays comme\r\n + nombre d'habitant\r\n + superficie\r\n + drapeau\r\n + code pays\r\n + Point culminant\r\n + PIB par habitant\r\n + Monnaie\r\n + Continent\t\r\n + Capitale \r\n + . . . .\r\n\r\n# Installation\r\ntres simple \u00e0 installer exercuter cette et la magie op\u00e9re seule \r\n```\r\npip install py-pays\r\n```\r\n> `important` <br>\r\napr\u00e9s l'installation du **package**, vous devez t\u00e9l\u00e9charger **base de donn\u00e9es** [ici](https://github.com/Tostenn/py-Pays/tree/main/Driver) et la mettre dans le **repertoire courant** de votre projet, cette **base de donn\u00e9es** est un **driver** du **package**<br>\r\n\r\n## **Driver**\r\nil existe deux **Driver** pour le **package** \r\n+ driver simple\r\n > qui contient trois (3) attribute de recherche qui sont `id` identifiant, `nom` nom du pays, `code` code du pays, \u00e0 t\u00e9lecharger [ici](https://github.com/Tostenn/py-Pays/raw/main/Driver/drive.dbs)\r\n\r\n+ driver avancer\r\n > qui contient trois (9) attribute de recherche qui sont `id` identifiant, `nom` nom du pays avec des fonctions avancer, `code` code du pays, `continant` contiant du pays, `monnaie` monnaie du pays, `code d'appel` du pays, `domaine` domaine web, `habitant` habitant, `superficie` superficie \r\n \u00e0 t\u00e9l\u00e9charger [ici](https://github.com/Tostenn/py-Pays/raw/main/Driver/drivers.dbs)\r\n\r\n## Utilisation rapide\r\n```\r\nfrom pays import pays as p\r\n\r\n# nouvelle instance de pays\r\npays = p.Pays(driver=\"driver\")\r\n\r\n# faire une requ\u00eate pour r\u00e9cup\u00e9rer le pays C\u00f4te d'ivoire\r\nciv = pays.query('> civ')\r\n\r\n# r\u00e9cup\u00e9rer toutes les informations concernant ce pays\r\nprint(pays.info(civ))\r\n```\r\n\r\n\r\n# Syntaxe \r\nil y a une synthaxe a utiliser pour b\u00e9neficier plein du potentiel des algorithmes\r\n<br>par exemple, si vous voulez\r\n\r\n### rechercher \u00e0 partir du nom du pays\r\npour cela, vous devez indiquer `$` suivi de l'\u00e9l\u00e9menemnt \u00e0 rechercher<br>\r\nExemple : `pays.query('$ ran')` renvoir tout les pays qui ont `ran` dans leur nom\r\n\r\n### rechercher \u00e0 partir du code du pays\r\npour cela, vous devez indiquer `>` suivi de l'\u00e9l\u00e9ment \u00e0 rechercher<br>\r\nExemple : `pays.query('> an')` renvoir tout les pays qui ont `an` dans leur code pays\r\n\r\n### rechercher \u00e0 partir de l'endentifant\r\npour cela, vous devez indiquer `_` suivi du num\u00e9ro \u00e0 rechercher<br>\r\nExemple : `pays.query('_ 53')` renvoir le pays qui correspondant \u00e0 l'identifiant \r\n> remarque : comme vous le savez il n'y a que 254 pays, par consequent indiquer un nombre qui n'ai pas dans cette intervalle [1 - 254 ] ne renverrait rien\r\n\r\n## Avec le driver avanc\u00e9\r\n\r\n### rechercher \u00e0 partir du continent\r\npour cela, vous devez indiquer `^` suivi de l'\u00e9l\u00e9ment \u00e0 rechercher<br>\r\nExemple : `pays.query('^ fr')` renvoir tout les pays qui sont sur un continent dont il `fr` dans le nom\r\n\r\n### rechercher \u00e0 partir de la monnaie\r\npour cela, vous devez indiquer `~` suivi de l'\u00e9l\u00e9ment \u00e0 rechercher<br>\r\nExemple : `pays.query('~ an')` renvoir tout les pays qui utilisent la monnaie dont il `an` dans le nom\r\n\r\n### rechercher \u00e0 partir du code d'appel\r\npour cela, vous devez indiquer `+` suivi du num\u00e9ro \u00e0 rechercher<br>\r\nExemple : `pays.query('+ 22')` renvoir le pays dont le code d'appel correspond `22` dans le nom\r\n\r\n### rechercher \u00e0 partir du domaine web\r\npour cela, vous devez indiquer `.` suivi du num\u00e9ro \u00e0 rechercher<br>\r\nExemple : `pays.query('+ ci')` renvoir le pays dont le domaine web correspond `ci` dans le nom\r\n\r\n### rechercher \u00e0 partir du nombre d'habitants\r\npour cela, vous devez indiquer `>>h` ou `<<h` suivi du num\u00e9ro \u00e0 rechercher<br>\r\nExemple : `pays.query('>>h 50000')` renvoir tout les pays dont le nombre d'habitants est sup\u00e9rieur a `50000` et `<<h` faire l'action inverse\r\n\r\n### rechercher \u00e0 partir de la superfice \r\npour cela, vous devez indiquer `>>s` ou `<<s` suivi du num\u00e9ro \u00e0 rechercher<br>\r\nExemple : `pays.query('>>s 50000')` renvoir tout les pays dont la superficie est sup\u00e9rieur \u00e0 `50000` et `<<s` faire l'action inverse\r\n\r\n \r\n## Fonction \r\n\r\n`pays.info()` prend comme argument une liste de noms de pays et renvoir toutes les informations le concernant ex `pays.info(['France'])`\r\n\r\n`pays.commandValidator()` prend comme argument une cha\u00eene qui correspond la votre command. Renvoir true si la commande est bien formul\u00e9e ex `pays.commandValidator('_ 53')`\r\n\r\n`pays.query()` prend comme argument une cha\u00eene qui correspond \u00e0 votre commande et une liste qui corespond au attribut de selection\r\n. Renvoir une liste selon la selection faite. ex `pays.query('_ 53',['nom','id'])`\r\n```\r\n# pour v\u00e9rifier quel Driver vous utilis\u00e9\r\nprint(pays.driver)\r\n\r\n# pour voir tous les attributs de selection disponible\r\nprint(pays.attr)\r\n\r\n# pour voir toutes les commandes disponibles\r\nprint(pays.cmd) \r\n```\r\n\r\n`pays.commandfree()` prend comme argument une cha\u00eene qui correspond \u00e0 votre commande, mais cette fonction ne filtre pas la commande avec la syntaxe pr\u00e9c\u00e9dent donc vous pouvez utiliser les requ\u00eates **`SQL`**, comme les ajouts, suppressions ou mise \u00e0 jours, cette fonction est pour les professionnels en **`SQL`**, mais ne vous en faite pas si vous endommager votre **`Driver`** vous pouriez toujours le re-t\u00e9l\u00e9charger ex `pays.commandfree('select * from pays where id > 200')` cette requ\u00eate nous renvoir les 54 derniers pays\r\n\r\n# **Drapeau**\r\n\r\ncomment parler de pays sans evoqu\u00e9 leur couleur. J'ai pensais a vous et la **`class Drapeau: `** vous permet comme par magie de t\u00e9l\u00e9charger les drapeaux des diff\u00e9rents **`pays`**\r\n\r\n```\r\nfrom pyPays.pays import Pays\r\nfrom pyPays.drapeau import Drapeau\r\n\r\npays = Pays(driver='databases.dbs')\r\ndr = Drapeau(pays,path='drapeau/')\r\nres = dr.download(res)\r\nprint(res)\r\n```\r\n\r\napr\u00e9s initialisation de la class vous utilisez, la fonction `download` pour t\u00e9l\u00e9charger le drapeau la fonction renvoir un dictionnaire `{ nom pays : chemin du drapeau }`\r\n\r\n\r\nmerci pour votre lecture pour vous remercier et consolider vos acquis, un petit script de mise en forme de vos connaissance des commandes pr\u00e9senter\r\n\r\n```\r\nfrom pays.pays import Pays\r\nfrom pays.drapeau import Drapeau\r\n\r\n\r\n# nouvelle instance de pays\r\npays = Pays('drivers.dbs')\r\n\r\n#coloer style\r\nvt = '\\x1b[32m'\r\nbl = '\\x1b[37m'\r\njn = '\\x1b[33m'\r\nrg = '\\x1b[30m'\r\nb = f'\\x1b[38;5;{123}m'\r\n\r\ndr = Drapeau(pays)\r\n\r\n# faire une requ\u00eate pour r\u00e9cup\u00e9rer le pays C\u00f4te d'ivoire\r\nstatus = lambda st = 'corret' : f'{f\"commande {st}\":-^60}'\r\n\r\nprint(f\"driver : {pays.driver}\")\r\nwhile True:\r\n cmd = input(bl+'requete pays : '+jn)\r\n if cmd == 'end':break\r\n \r\n if pays.commandValidator(cmd):\r\n print(vt+status()+bl)\r\n res = pays.query(cmd,['nom'])\r\n print(f'{b}{res}')\r\n \r\n cmd = input('t\u00e9l\u00e9charger le(s) drapeau(x) o/n : ')\r\n if cmd == 'o':\r\n res = dr.download(res)\r\n print(f'{b}{res}')\r\n\r\n else : print(rg+status('incorrect')+bl)\r\n```\r\n",
"bugtrack_url": null,
"license": "LICENSE MIT",
"summary": "py-Pays est un programme ecris en python, qui permet d efferctuer des traitements sur les information relatif au pays",
"version": "1.0.4",
"project_urls": {
"Homepage": "https://github.com/Tostenn/py-Pays"
},
"split_keywords": [
"pays",
"",
"traitement",
"",
"donn\u00e9s",
"",
"country",
"",
"big data",
"",
"analysis",
"",
"treatment"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "1e8d62a46e613b0377b412aad26273b64f650163e304f00915e6ee5fb938c7b6",
"md5": "213760d8407ad553ef296a2baa19cd2d",
"sha256": "976499b90a77d035e42fb503721de6efa3bcc297809a0550481f71290539fee5"
},
"downloads": -1,
"filename": "py_pays-1.0.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "213760d8407ad553ef296a2baa19cd2d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 8106,
"upload_time": "2023-10-16T12:22:58",
"upload_time_iso_8601": "2023-10-16T12:22:58.167824Z",
"url": "https://files.pythonhosted.org/packages/1e/8d/62a46e613b0377b412aad26273b64f650163e304f00915e6ee5fb938c7b6/py_pays-1.0.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "f8646edf5b53b809281cc7ce5b3e18908c038aa8706294763550acd29c19e37b",
"md5": "e7648e40e63b8f0369905bb80552cb65",
"sha256": "dc9fce65141c62d2bbc69734ce601f2a250f8aab652ea670abc5260291fde031"
},
"downloads": -1,
"filename": "py-pays-1.0.4.tar.gz",
"has_sig": false,
"md5_digest": "e7648e40e63b8f0369905bb80552cb65",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 7448,
"upload_time": "2023-10-16T12:23:00",
"upload_time_iso_8601": "2023-10-16T12:23:00.147117Z",
"url": "https://files.pythonhosted.org/packages/f8/64/6edf5b53b809281cc7ce5b3e18908c038aa8706294763550acd29c19e37b/py-pays-1.0.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-10-16 12:23:00",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Tostenn",
"github_project": "py-Pays",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "py-pays"
}