Skip to main content

py-Pays est un programme ecris en python, qui permet d efferctuer des traitements sur les information relatif au pays

Project description

py-pays

py-Pays est un programme ecris en python, qui permet d'efferctuer des traitements sur les information relatif au pays

à 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
aprés l'installation du package vous devez télecharger base de donnée ici et la mettre dans le repertoire courant de votre project cette base de donnée est un driver du package

Driver

il existe deux Driver pour le package

  • driver simple

    qui contient trois (3) attribute de recherche qui sont id identifant, nom nom du pays, code code du pays, à télecharger ici

  • driver avancer

    qui contient trois (9) attribute de recherche qui sont id identifant, nom nom du pays avec des fonction 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élecharger ici

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 toute les inforamtions consernant ce pays
print(pays.info(civ))

Synthaxe

il y a une synthaxe a utiliser pour beneficier plein du potentiel des algorithmes
par exemple si vous voulez

rechercher à partir du nom du pays

pour cela vous devez indiquer $ suivie de l'element à rechercher
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 > suivie de l'element à rechercher
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 _ suivie du numéro à rechercher
Exemple : pays.query('_ 53') renvoir le pays qui correspondan à l'identifiant

remarque : comme vous le savez il n'y a que 254 pays par consequent indiquer un nombre en n'ai pas dans cette intervalle [1 - 254 ] ne renverai rien

Avec le driver avancer

rechercher à partir du continent

pour cela vous devez indiquer ^ suivie de l'element à rechercher
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 ~ suivie de l'element à rechercher
Exemple : pays.query('~ an') renvoir tout les pays qui utilise la monnaie dont il an dans le nom

rechercher à partir du code d'appel

pour cela vous devez indiquer + suivie du numéro à rechercher
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 . suivie du numéro à rechercher
Exemple : pays.query('+ ci') renvoir le pays dont le domaine web correspond ci dans le nom

rechercher à partir du nombre d'habitant

pour cela vous devez indiquer >>h ou <<h suivie du numéro à rechercher
Exemple : pays.query('>>h 50000') renvoir tout les pays dont le nombre d'habitant est supérieur a 50000 et <<h faire l'action inverse

rechercher à partir de la superfice

pour cela vous devez indiquer >>s ou <<s suivie du numéro à rechercher
Exemple : pays.query('>>s 50000') renvoir tout les pays dont la superfice est supérieur a 50000 et <<s faire l'action inverse

Fonction

pays.info() prend comme argument une liste de nom de pays et renvoir toutes les informations le consernant ex pays.info(['France'])

pays.commandValidator() prend comme argument une chaîne qui correspond la votre command. Renvoir true si la commande est bien formuler ex pays.commandValidator('_ 53')

pays.query() prend comme argument une chaîne qui correspond la votre command 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 tout les attributs de selection disponible
print(pays.attr)

# pour voir tout les commandes disponible
print(pays.cmd) 

pays.commandfree() rend comme argument une chaîne qui correspond la votre command mais cette fonction ne filter pas la commande avec la synthaxe précedent donc vous pouvez les requete SQL, comme les ajout, suppression ou mise ajout, cette fonction est pour les professionnel 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 request nous renvoir les 54 dernier 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 initilisation de la class vous utilise 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 aquis, un petit script de mise en vos 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)

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

py-pays-1.0.3.tar.gz (7.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

py_pays-1.0.3-py3-none-any.whl (8.0 kB view details)

Uploaded Python 3

File details

Details for the file py-pays-1.0.3.tar.gz.

File metadata

  • Download URL: py-pays-1.0.3.tar.gz
  • Upload date:
  • Size: 7.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.2

File hashes

Hashes for py-pays-1.0.3.tar.gz
Algorithm Hash digest
SHA256 db505df18721fb2390ad245b80e4523774e7eea491302bdc673e4474f208d3c5
MD5 7639885a9b8976b96ce410b2a972bb99
BLAKE2b-256 7f58de1e43924ad04072faa0caf0a8867cbc2769f263f5956aa27514c6bb8c72

See more details on using hashes here.

File details

Details for the file py_pays-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: py_pays-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 8.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.2

File hashes

Hashes for py_pays-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 18c342792d6556d8593babb44bf85cfc56da25d189a553f5f5e998f21f4086f6
MD5 3e14a9d0a525ce0c55c45df1c34a43c8
BLAKE2b-256 adac703bd8b7552e1c397325f0281020742c79ea50a371f703527631d9387905

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page