python
word = 'hello'
print(word[0:2]) #Extrait du 0ème élément au 2ème élément
##Résultat du traitement
he
Spécifier la position d'un élément avec un soi-disant index semble être appelé slicing en Python.
Bien sûr, il y a une notation de tranche dans la liste
python
wordlist = ['apple','bike','cake','drum','electric']
print(wordlist[2:]) #Extrait du deuxième élément à la fin
print(wordlist[:2]) #Extrait du premier au deuxième élément
##Résultat du traitement
['cake', 'drum', 'electric']
['apple', 'bike']
Ajouter un élément à la fin de la liste
.append()
Supprimer l'élément spécifié dans l'argument de la liste
.remove()
Supprimer tous les éléments de la liste
.clear()
Ajouter x au i-ème dans la liste
.insert(i,x)
python
wordlist = ['apple','bike','cake','drum','electric']
wordlist.insert(5,'falcon')
print(wordlist)
##Résultat de sortie
['apple', 'bike', 'cake', 'drum', 'electric', 'falcon']
Renvoie l'index du premier élément avec la valeur définie dans l'argument
.index()
python
lst = [1, 2, 3, 4, 5]
idx = lst.index(4)
print(idx)
##Résultat de sortie
3
Puisque la liste a également le concept d'id, une fonction pour faire un duplicata
.copy()
python
#Exemple de copie de la liste et d'édition de la copie mais échec car les identifiants sont les mêmes
wordlist = ['apple','bike','cake','drum','electric']
copylist = wordlist
copylist[0] = 'admin'
print(wordlist)
print(copylist)
##Résultat de sortie
['admin', 'bike', 'cake', 'drum', 'electric']
['admin', 'bike', 'cake', 'drum', 'electric']
#Succès
wordlist = ['apple','bike','cake','drum','electric']
copylist = wordlist.copy()
print(wordlist is not copylist) #Vérifiez que la liste de mots n'est pas copylist
copylist[0] = 'admin'
print(wordlist)
print(copylist)
##Résultat de sortie
True
['apple', 'bike', 'cake', 'drum', 'electric']
['admin', 'bike', 'cake', 'drum', 'electric']
mata Les boucles de deux listes ou plus peuvent être représentées à l'aide de zip.
Par exemple, l'exemple suivant
python
list1 = list(range(1,5))
list2 = list(range(5,9))
for a,b in zip(list1,list2):
print(f"a = {a}, b = {b}", a, b )
Préparez deux variables de compteur et répétez l'affectation de list1 et list2 respectivement. Ensuite, cela devient comme suit.
##Résultat de sortie
a = 1, b = 5 1 5
a = 2, b = 6 2 6
a = 3, b = 7 3 7
a = 4, b = 8 4 8
En Python, il n'est pas nécessaire d'ajouter un point-virgule à la fin d'une phrase, mais il peut être utilisé comme délimiteur d'instructions. En d'autres termes
a = 10; b=20; c=30;
Cela signifie que les définitions de variables peuvent être regroupées. Bien sûr, si vous les mettez tous sur une seule ligne, la lisibilité sera considérablement altérée, alors soyez prudent.
Python a également une pause et continue.
python
i = 0
while True:
i += 1
if i > 10:
break
if i % 2 == 1:
continue
print(i)
print('Terminer le processus')
Si i est supérieur à 10, le traitement est interrompu, et si i est impair, le traitement est renvoyé à i + = 1. Ensuite, seulement 10 ou moins seront imprimés.
Les listes sont comme des tableaux, mais Python a un concept similaire de types de tapple.
La différence avec la liste est que ** les éléments stockés ne peuvent pas être mis à jour / ajoutés / supprimés **. Cependant, à l'inverse, on comprend qu'il stocke des valeurs constantes.
Vous pouvez convertir d'autres types en listes ou en taples avec list ()
et tuple ()
.
python
a =list("sample"); b=tuple("sample2"); c=list(range(1,11,2)); d=tuple(range(1,11,2))
print(type(d))
Les valeurs générées par la chaîne de caractères et la plage (à partir de 1 et incrémenté de 2 sont acquises dans la plage inférieure à 11) sont stockées respectivement dans le type de liste et la plage. À propos, si vous convertissez une chaîne de caractères en liste ou en taple, elle sera stockée séparément pour chaque caractère.
Le déballage peut être utilisé si vous souhaitez que chaque variable se voit attribuer un élément stocké dans une liste ou une taple.
python
words = ['apple','bike','corn']
a,b,c = words
print(a)
##Résultat de sortie
apple
Notez qu'une erreur se produira si words = a, b, c
.
Si vous souhaitez combiner plusieurs listes en une liste bidimensionnelle, utilisez zip ().
python
a = ['apple','bike','corn']
b = ['docter','egg','falcon']
c = ['game','heart','icon']
d = ['jack','king','love']
array_list = zip(a,b,c,d)
result = list(array_list)
print(result)
##Résultat de sortie
[('apple', 'docter', 'game', 'jack'), ('bike', 'egg', 'heart', 'king'), ('corn', 'falcon', 'icon', 'love')]
Au stade de l'exécution de zip (), ce n'est qu'un objet, donc je vais le convertir en liste avec la fonction list. Et, comme vous pouvez le voir dans le résultat de sortie, lorsque vous utilisez zip (), Vous pouvez voir que les éléments de chaque liste sont restaurés pour chaque index. En d'autres termes
python
print(result[0])
##Résultat de sortie
('apple', 'docter', 'game', 'jack')
Il se trouve que. Notez qu'il s'agit d'un processus différent de celui de la création d'une liste avec l'instruction for.
Considérez-le comme un ensemble de termes mathématiques ou un groupe. En d'autres termes, c'est une collection d'éléments qui ne se chevauchent pas. Par exemple
fruit = {'apple','banana','lemon'}
C'est comme ça.
Les listes sont représentées par «[]» et les taples sont représentés par «()», tandis que les ensembles sont représentés par «{}».
Cependant, il prend la forme de x = {}
, et quand aucun élément n'y est enregistré ou lorsque l'élément enregistré est une clé: valeur, il devient un dictionnaire au lieu d'un ensemble.
En outre, un ensemble peut être enregistré en tant que taple, mais une liste ne peut pas être enregistrée.
liste
-Si-appelé tableau.
-Les éléments peuvent être mis à jour, ajoutés et supprimés.
-Ajouter ʻappend () et supprimer
remove () . -La conversion d'autres types vers une liste est
list ()`.
Taple
-Une image d'un tableau qui stocke des valeurs constantes.
-Les éléments ne peuvent pas être mis à jour, ajoutés ou supprimés.
-La conversion des autres types en tapple est tuple ()
.
ensemble
-Un soi-disant tableau d'ensemble (groupe).
-Les éléments avec le même contenu ne peuvent pas être enregistrés plus d'une fois.
-Les plans peuvent être considérés comme des éléments, mais pas les listes.
-La conversion d'autres types vers des ensembles est set ()
.
-À la différence des listes et des taples, il n'y a pas d'ordre d'alignement, donc il n'y a pas d'index **. **.
-Ajouter ʻadd () ʻet supprimerremove ()
.
-Un ensemble peut mettre à jour, ajouter et supprimer des éléments, mais certains types ne peuvent pas le faire même dans le même ensemble.
dictionnaire
-Arrangement dit associatif.
L'élément doit être sous la forme clé: valeur.
-Utilisez keys ()
pour récupérer les clés, value ()
pour récupérer les valeurs, et ʻitems () `pour récupérer les deux en même temps.
Il se trouve que.
Le module aléatoire peut être utilisé non seulement pour les valeurs numériques mais aussi pour les séquences telles que les taples et les listes.
Obtenez un élément aléatoirement de la séquence avec choice ()
.
Obtient k éléments avec des doublons de la séquence définie dans l'argument avec choix (seq, k = 1)
et les renvoie sous forme de liste.
sample (seq, k)
récupère k éléments de la séquence et les renvoie sous forme de liste sans duplication.
Vous pouvez trier la séquence avec shuffle ()
.
En d'autres termes
python
import random
a = ['apple','basket','color','dictionary','error']
wordlist =list(a)
print(random.choice(wordlist))
print(random.choices(wordlist,k=3))
print(random.sample(wordlist,3))
print(wordlist)
random.shuffle(wordlist)
print(wordlist)
##Résultat de sortie(Puisqu'il s'agit d'un module aléatoire, le résultat change à chaque fois qu'il est exécuté.)
dictionary
['error', 'apple', 'color']
['dictionary', 'basket', 'color']
['apple', 'basket', 'color', 'dictionary', 'error']
['color', 'apple', 'dictionary', 'error', 'basket']
python
squares = [v ** 2 for v in range(10)]
print(squares)
Comme je l'ai fait la dernière fois, si vous créez une instruction for dans la liste comme décrit ci-dessus et mettez l'expression de l'élément que vous souhaitez stocker à plusieurs reprises dans la liste avant, vous pouvez facilement créer une chaîne numérique. Par exemple, dans l'exemple ci-dessus, les valeurs au carré de 0 à 9 seront stockées dans la liste. Il peut également être utilisé comme un ensemble, auquel cas un ensemble peut être généré.
python
sample = {x for x in range(30) if x %2 == 0}
print(sample)
##Résultat de sortie
{0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28}
Du point de vue de la génération d'un ensemble, il devrait y avoir une régularité dans ce qui est généré (ce qui précède est un ensemble pair dans la plage de 0≤x <30) afin de le distinguer d'une simple liste.
Dans le cas d'un dictionnaire, c'est le cas.
languages = [
"apple",
"bike",
"cow",
"decade",
"egostic"
]
dictionary = {lang.upper():len(lang) for lang in languages}
print(dictionary)
##Résultat de sortie
{'APPLE': 5, 'BIKE': 4, 'COW': 3, 'DECADE': 6, 'EGOSTIC': 7}
Tout d'abord, créez une clé avec une liste.
C'est bien avec les tapples.
Et définissez la forme de «clé: valeur» avant pour.
Cette fois, la liste créée est affectée à la variable de compteur lang
.
Ensuite, sur la base de ce lang
, la propriété est créée comme la capitale de la chaîne de caractères stockée dans languages: la valeur du nombre de caractères
, et le dictionnaire est créé à plusieurs reprises.
FROM jupyter/datascience-notebook:7a0c7325e470 #Spécifier une image
COPY requirements.txt tmp/requirements.txt #Un fichier répertoriant les packages à installer.
RUN pip install -r tmp/requirements.txt #pip est une commande pour installer des packages Python. Voici les exigences.Installez les packages répertoriés dans txt.
EXPOSE 8888
À titre de révision, FROM sélectionne l'image de base, c'est-à-dire spécifie l'image que vous souhaitez utiliser. EXPOSE ouvre le port spécifié. Bien sûr, si vous n'avez pas créé d'environnement Docker sur Mac ou Windows 10 Pro, vous devez également définir la redirection de port côté Virtual Box.
version: "3.7" # docker-compose.Spécifiez la version du format de fichier yml
services:
jupyterlab: #Services à gérer
build: .
container_name: jupyterlab #Nom du conteneur
environment:
- JUPYTER_ENABLE_LAB=yes #Activer jupyterLab
ports:
- "8888:8888" #Spécifier le port géré par le service
volumes:
- ./JupyterLab:/home/jovyan/work #Configuration des répertoires à partager / synchroniser. Répertoire côté hôte:Répertoire du côté de l'espace virtuel
command: start.sh jupyter lab --NotebookApp.token='' #Omettre l'entrée du jeton de connexion lors du démarrage du conteneur
Je ne suis toujours pas familier avec Docker, j'ai donc essayé diverses choses en recherchant sur Google, et le sens de la création de docker-compose.yml est que si vous essayez de le faire avec docker run
, vous devrez faire de longues options plus tard Il semble y avoir un sens.
Et le moyen le plus rapide de créer un environnement est d'extraire l'image du fonctionnaire, de créer un conteneur avec l'option avec docker run
et de le démarrer là-bas, mais après tout, cela s'est habitué à Docker J'ai senti que c'était la cause de rester coincé dans le marais si je n'étais pas une personne, et de gérer le conteneur avec deux fichiers, Dockerfile (j'ai entendu dire que je ne l'écrirais peut-être pas récemment) et docker-compose.yml, au contraire, lisibilité et extension plus tard J'ai pensé que ce serait bien en termes de facilité.
python
import sys
print(sys.getdefaulttencoding())
python
with open('jinko.txt','rt')as f:
print(f.read())
La lecture et l'écriture de fichiers en Python commencent par ʻopen () et se terminent par
close () , mais pour éviter d'oublier
close () , utilisez
with open () `.
python
with open('jinko.txt') as f:
l = f.readlines()
print(l)
#Ou
with open('jinko.txt') as f:
while True:
l = f.readline()
print(l)
if not l:
break
Assignez le fichier à la variable f, faites-en un objet et utilisez la méthode readlines (). Ou utilisez la méthode readline () dans une boucle pour lire ligne par ligne.
python
count = 0
with open('jinko.txt') as f:
l = f.readline()
while True:
l = f.readline()
m = l.strip()
print(m)
count += 1
if count > 5:
break
#Lors de la liste ligne par ligne séparés par des virgules
import csv
count = 0
with open('jinko.txt') as f:
l = f.readline()
reader = csv.reader(f)
for l in reader:
print(l)
count += 1
if count > 5:
break
#Retirez les valeurs numériques des données et essayez de calculer
import csv
s = 0
with open('jinko.txt') as f:
reader = csv.reader(f)
for l in reader:
if l[0] == "Hokkaido":
s = s + int(l[2])
print("Population de Hokkaido", s ,"Homme")
##Extrait partiel des données lues ci-dessus
['Hokkaido', 'Sapporo', '1913545']
['Hokkaido', 'Ville de Hakodate', '279127']
['Hokkaido', 'Ville d'Otaru', '131928']
['Hokkaido', 'Ville d'Asahikawa', '347095']
['Hokkaido', 'Ville de Muroran', '94535']
['Hokkaido', 'Ville de Kushiro', '181169']
csv.reader ()
fonctionne commesplit ()
.
Il est recommandé de l'utiliser si les données sont au format CSV.
Concernant la partie calcul, d'abord à partir de l'extrait des données à lire, l [0]
indique la préfecture, c'est-à-dire si l [0] ==" Hokkaido ":
détermine la plage de données à lire.
Et vous pouvez voir que «l [2]» contient la population, c'est-à-dire des données numériques.
Cependant, comme il est stocké sous forme de chaîne de caractères, il est utilisé après avoir été numérisé avec ʻint () `.
Par conséquent, si vous écrivez la phrase ci-dessus, vous pouvez calculer la population d'Hokkaido dans les données.
python
with open('jinko_sjis.txt', encoding='shift-jis', newline='\r\n') as f:
while True:
l = f.readline()
print(l)
if not l:
break
Pour lire un fichier autre que utf-8, spécifiez éventuellement le format de fichier ʻencoding = 'que vous voulez lire'. Spécifiez également le type de saut de ligne avec
newline`.
Cette fois, le saut de ligne est spécifié dans Windows.
python
with open("write_example.txt", "w") as f:
f.write("abc\r\n")
f.write("defgh")
#Écriture de données multilignes
data = ["abc","defgh"]
with open("write_example2.txt","w") as f:
f.writelines(data)
#Écrire des données CSV
import csv
alldata = [
[1,2,3],[2,3,5]
]
with open("write_example3","w") as f:
writer =csv.writer(f)
writer.writerows(alldata)
##l'instruction for peut également être utilisée
import csv
alldata = [
[1, 2, 3],
[2, 3, 5]
]
with open("writeexample5.txt", "w") as f:
writer = csv.writer(f)
for data in alldata:
writer.writerow(data)