Fiche d'apprentissage (4e jour) #Comment obtenir le chemin absolu à partir du chemin relatif

contenu de l'étude

Comment obtenir un chemin absolu à partir d'un chemin relatif

Lorsque la destination du lien est décrite par un chemin relatif en HTML, utilisez ʻurllib.parse.urljon () `pour obtenir le chemin absolu.

Exemple de description
from urllib.parse import urljoin

base = "http://exsample.com/html/a.html"

compurl = lambda q: print(urljoin(base,q))
compurl("b.html")
compurl("sub/c.html")
compurl("../index.html")
compurl("../img/hoge.png ")

Résultat d'exécution

http://example.com/html/b.html http://example.com/html/sub/c.html http://example.com/index.html http://example.com/img/hoge.png

Grammaire de base Python

Instruction pass

En Python, les blocs de traitement sont définis par indentation, donc lorsqu'il n'est pas nécessaire d'effectuer le traitement, le bloc de traitement lui-même disparaît. Par conséquent, l'instruction pass est utilisée pour décrire explicitement que rien ne doit être fait.

with open('exsample.txt', 'w'):
    pass

Branche conditionnelle

Décrivez en utilisant ʻif, ʻelif, ʻelse`. De plus, lors du branchement en deux blocs de traitement par une expression conditionnelle, il peut être décrit en utilisant un opérateur ternaire.

 si expression conditionnelle 1:
 <Bloc de traitement 1>
 #Processing exécuté lorsque l'expression conditionnelle 1 est True
 expression conditionnelle elif 2:
 <Bloc de traitement 2>
 #Processing exécuté lorsque l'expression conditionnelle 1 est False et que l'expression conditionnelle 2 est True
else:
 <Bloc de traitement 3>
 # Traitement exécuté lorsque l'expression conditionnelle 1 est False, l'expression conditionnelle 2 est False et l'expression conditionnelle 3 est True.

# Branchement conditionnel par opérateur ternaire
# Valeur 1 lorsque l'expression conditionnelle est True, valeur 2 lorsque False
 Valeur 1 si expression conditionnelle sinon valeur 2

Itérateur

Conservez les données comme une règle qui peut générer une série de données, et non la valeur elle-même qui représente les données. Lorsqu'une grande quantité de données est requise, il est plus efficace en termes de mémoire d'utiliser un itérateur. Un exemple de description d'un itérateur de type «plage» est présenté ci-dessous.

# Les trois range () suivants renvoient un itérateur qui s'incrémente de 1 de 0 à 9.
range(0, 10, 1)
range(0, 10)
a = range(10)

print(a)
print(a[0])

Résultat d'exécution

range(0, 10) 0

range () a la fonction d'un opérateur d'incrémentation (++) qui ne peut pas être utilisé en Python. La décrémentation (--) se fait en utilisant un itérateur appeléreverse ().

Instructions break et continue

En décrivant dans le bloc de traitement de l'instruction de boucle, il est possible de contrôler l'instruction de boucle en cours d'exécution.

Instruction break

Brisez la boucle en cours et quittez la boucle.

b = 0
while True:
    b += 1
    if b > 5
 Lorsque break # b = 6, la boucle est quittée et le processus se termine.
    print(b)

Résultat d'exécution

1 2 3 4 5

Déclaration continue

Suspend le bloc de traitement en cours d'exécution et déplace le traitement vers l'évaluation d'expression conditionnelle de la boucle.

c = 0
while True:
    c += 1
    if c < 5
 Le traitement suivant ne sera pas exécuté tant que continuer # b = 6.
    print(c)
    break

Résultat d'exécution

6

Résumé

J'ai commencé à avoir du mal à comprendre le code du livre de référence sur le scraping que j'utilisais, alors j'ai décidé de recommencer à apprendre la grammaire de base de Python. J'ai été surpris que le décrément d'incrémentation, qui était très pratique en C et Java, ne puisse pas être utilisé, mais il peut être bien géré en utilisant l'affectation cumulative (+ =,- =) et l'itérateur. je veux

Livre de référence

J'ai joint le GitHub publié à partir du livre auquel j'ai fait référence. Révision supplémentaire de la technique de développement du scraping Python et de l'apprentissage automatique

Recommended Posts

Fiche d'apprentissage (4e jour) #Comment obtenir le chemin absolu à partir du chemin relatif
Fiche d'apprentissage 4 (8e jour)
Fiche d'apprentissage 9 (13e jour)
Fiche d'apprentissage 3 (7e jour)
Fiche d'apprentissage 5 (9e jour)
Fiche d'apprentissage 6 (10e jour)
Fiche d'apprentissage 8 (12e jour)
Fiche d'apprentissage 1 (4e jour)
Fiche d'apprentissage 7 (11e jour)
Fiche d'apprentissage 2 (6e jour)
Fiche d'apprentissage 16 (20e jour)
Dossier d'apprentissage 22 (26e jour)
[Selenium] Comment spécifier le chemin relatif de chromedriver?
Dossier d'apprentissage n ° 21 (25e jour)
Fiche d'apprentissage 13 (17e jour) Kaggle3
Dossier d'apprentissage n ° 10 (14e jour)
Fiche d'apprentissage 12 (16e jour) Kaggle2
Dossier d'apprentissage n ° 24 (28e jour)
Dossier d'apprentissage n ° 23 (27e jour)
Dossier d'apprentissage n ° 25 (29e jour)
Dossier d'apprentissage n ° 26 (30e jour)
Dossier d'apprentissage n ° 20 (24e jour)
Comment obtenir la version Python
Dossier d'apprentissage n ° 14 (18e jour) Kaggle4
Dossier d'apprentissage n ° 15 (19e jour) Kaggle5
Fiche d'apprentissage 11 (15e jour) Participation de Kaggle
Comment obtenir des abonnés et des abonnés de Python à l'aide de l'API Mastodon
Enregistrez les étapes pour comprendre l'apprentissage automatique
Obtenez le chemin d'accès au fichier d'unité systemd
Comment obtenir une sortie colorée sur la console
Comment faire fonctionner Linux depuis la console
Comment accéder à la banque de données de l'extérieur
[Python Kivy] Comment obtenir le chemin du fichier par glisser-déposer
Comment obtenir les résultats de l'identifiant dans Celery
Comment faire fonctionner Linux depuis l'extérieur Procédure
Comment mesurer la vitesse de la ligne depuis le terminal
Comment obtenir les fichiers dans le dossier [Python]
Remarque: Comment obtenir le dernier jour du mois avec python (ajouté le premier jour du mois)
[Python] Comment supprimer les valeurs en double de la liste
Comment obtenir le nom de la variable lui-même en python
Comment obtenir le nombre de chiffres en Python
Obtenez le chemin absolu du script en cours d'exécution
Comment lancer instantanément Jupyter Notebook à partir du terminal
Comment publier un ticket depuis l'API Shogun
Enregistrement d'apprentissage de la programmation 2ème jour
Obtenez des données de Poloniex, un bureau de change virtuel, via l'API et utilisez le Deep Learning pour prédire le prix du lendemain.
[Apprentissage en profondeur] Découvrez comment utiliser chaque fonction du réseau neuronal convolutif [DW jour 3]
Comment obtenir uniquement les données nécessaires du groupe de données structurées à l'aide d'une méthode polyvalente
[Partie 1] Utilisez le Deep Learning pour prévoir la météo à partir d'images météorologiques
[Partie 3] Utilisez le Deep Learning pour prévoir la météo à partir d'images météorologiques
Une histoire sur la façon de spécifier un chemin relatif en python.
Accédez au fichier avec un chemin relatif à partir du script d'exécution.
Obtenez la version du package pour vous inscrire à PyPI à partir de Git
Comment calculer la quantité de calcul appris de ABC134-D
Comment se connecter automatiquement comme 1Password depuis CLI
(Note) Comment passer le chemin de votre propre module
Comment effectuer les réglages initiaux à partir de la création de projet Django
Comment augmenter le nombre d'images de jeux de données d'apprentissage automatique
Comment obtenir la dernière (dernière) valeur d'une liste en Python
Comment obtenir toutes les clés et valeurs du dictionnaire