Table des matières
01 Une boucle for utilisant trysauf
02 Opérations exponentielles
03 Boucles imbriquées
04 Utilisation de la fonction split() dans une boucle for
1. Utilisez la fonction split() pour la comparaison de mots
2. 使用split()函数打印指定格式的文本
3. 使用split()函数打印固定宽度的文本
4. 使用split()函数比较文本字符串
05 用基础的for循环显示字符串中的字符
06 join()函数
Maison développement back-end Tutoriel Python 6 exemples, 8 extraits de code, explication détaillée de la boucle For en Python

6 exemples, 8 extraits de code, explication détaillée de la boucle For en Python

Apr 11, 2023 pm 07:43 PM
python for 循环

Python prend en charge les boucles et sa syntaxe est légèrement différente des autres langages (comme JavaScript ou Java). Le bloc de code suivant montre comment utiliser une boucle for en Python pour parcourir les éléments d'une liste :

L'extrait de code ci-dessus imprime trois lettres sur des lignes séparées. Vous pouvez limiter la sortie à la même ligne en ajoutant une virgule "," après l'instruction print (s'il y a plusieurs caractères spécifiés à imprimer, ils seront "retour à la ligne"), le code est le suivant :

Quand vous le souhaitez La forme de code ci-dessus peut être utilisée lors de l'affichage du contenu du texte sur une seule ligne au lieu de plusieurs lignes. Python fournit également la fonction intégrée reverse(), qui peut inverser le sens de la boucle, par exemple :

Notez que cela ne peut être inversé que lorsque la taille de l'objet est déterminée ou que l'objet implémente la méthode _reversed_(). Seule la fonction de parcours directionnel est valide.

01 Une boucle for utilisant trysauf

StringToNums.py dans le listing 1 illustre comment additionner un ensemble d'entiers convertis à partir de chaînes.

  • Listing 1 StringToNums.py
<ol><pre class='brush:php;toolbar:false;'>line = '1 2 3 4 10e abc' 
sum  = 0 
invalidStr = "" 
print('String of numbers:',line) 
for str in line.split(" "): 
  try: 
    sum = sum + eval(str) 
  except: 
    invalidStr = invalidStr + str + ' ' 
print('sum:', sum) 
if(invalidStr != ""): 
  print('Invalid strings:',invalidStr) 
else: 
  print('All substrings are valid numbers') 
Copier après la connexion

Listing 1 initialise d'abord les variables line, sum et invalidStr, puis affiche le contenu de la ligne. Ensuite, le contenu de la ligne est divisé en mots, puis les valeurs des mots sont accumulées une par une dans la somme variable via le bloc de code try. Si une exception se produit, le contenu de la chaîne actuelle est ajouté à la variable invalidStr.

Lorsque l'exécution de la boucle se termine, le listing 1 imprime la somme des mots numériques et affiche les mots non numériques après. Sa sortie ressemble à ceci :

02 Opérations exponentielles

Nth_exponet.py dans le listing 2 illustre comment calculer la puissance d'un ensemble d'entiers.

  • Listing 2 Nth_exponet.py
<ol ><pre class='brush:php;toolbar:false;'>maxPower = 4 
maxCount = 4 
def pwr(num): 
  prod = 1 
  for n in range(1,maxPower+1): 
    prod = prod*num 
    print(num,'to the power',n, 'equals',prod) 
  print('-----------') 
for num in range(1,maxCount+1): 
    pwr(num) 
Copier après la connexion

Listing 2 a une fonction pwr() dont le paramètre est une valeur numérique. La boucle de cette fonction peut imprimer le paramètre élevé à la puissance 1 à n. La valeur de n va de 1 à maxCount+1.

La deuxième partie du code appelle la fonction pwr() de 1 à maxCount+1 via une boucle for. Sa sortie ressemble à ceci :

03 Boucles imbriquées

La liste 3 de Triangular1.py illustre comment imprimer une ligne d'entiers consécutifs (en commençant à 1) où chaque ligne est plus longue que la ligne 1 précédente.

  • Listing 3 Triangular1.py
<ol ><pre class='brush:php;toolbar:false;'>max = 8 
for x in range(1,max+1): 
  for y in range(1,x+1): 
    print(y,'', end='') 
  print()  
Copier après la connexion

Listing 3 initialise d'abord la variable max à 8, puis exécute une boucle à travers la variable x de 1 à max+1. La boucle interne a une variable de boucle y avec une valeur de 1 à x+1 et imprime la valeur de y. Son résultat est le suivant :

04 Utilisation de la fonction split() dans une boucle for

Python prend en charge une variété de fonctions pratiques liées aux opérations sur les chaînes, y compris la fonction split() et la fonction join(). La fonction split() est utile lorsque vous devez tokeniser (c'est-à-dire « diviser ») une ligne de texte en mots, puis utiliser une boucle for pour parcourir les mots.

La fonction join() est à l'opposé de la fonction split(), elle "joint" deux mots ou plus en une seule ligne. Vous pouvez facilement supprimer les espaces supplémentaires dans une phrase en utilisant la fonction split(), puis en appelant la fonction join() afin qu'il n'y ait qu'un seul espace entre chaque mot dans la ligne de texte.

1. Utilisez la fonction split() pour la comparaison de mots

Compare2.py dans le listing 4 illustre comment comparer chaque mot d'une chaîne de texte avec un autre mot via la fonction split().

  • Listing 4 Compare2.py
<ol ><pre class='brush:php;toolbar:false;'>x = 'This is a string that contains abc and Abc' 
y = 'abc' 
identical = 0 
casematch = 0 
for w in x.split(): 
  if(w == y): 
    identical = identical + 1 
  elif (w.lower() == y.lower()): 
    casematch = casematch + 1 
if(identical > 0): 
 print('found identical matches:', identical) 
if(casematch > 0): 
 print('found case matches:', casematch) 
if(casematch == 0 and identical == 0): 
 print('no matches found') 
Copier après la connexion

Listing 4 Comparez chaque mot de la chaîne x avec le mot abc via la fonction split(). Si les mots correspondent exactement, la variable identique est incrémentée de 1 ; sinon, une comparaison insensible à la casse est tentée, et s'il y a une correspondance, la variable casematch est incrémentée.

Le résultat du listing 4 ressemble à ceci :

2. 使用split()函数打印指定格式的文本

清单5 的FixedColumnCount1.py 说明了如何打印一组设定固定宽度的字符串。

  • 清单5 FixedColumnCount1.py
<ol ><pre class='brush:php;toolbar:false;'>import string 
wordCount = 0 
str1 = 'this is a string with a set of words in it' 
print('Left-justified strings:') 
print('-----------------------') 
for w in str1.split(): 
   print('%-10s' % w) 
   wordCount = wordCount + 1 
   if(wordCount % 2 == 0): 
      print("") 
print("n") 
print('Right-justified strings:')  
print('------------------------')  
wordCount = 0 
for w in str1.split(): 
   print('%10s' % w) 
   wordCount = wordCount + 1 
   if(wordCount % 2 == 0): 
      print() 
Copier après la connexion

清单5 首先初始化变量wordCount和str1,然后执行两个for循环。第一个for循环对str1的每个单词进行左对齐打印,第二个for循环对str1的每个单词进行右对齐打印。在每个循环中当wordCount是偶数的时候就输出一次换行,这样每打印两个连续的单词之后就换行。清单5的输出如下所示:

3. 使用split()函数打印固定宽度的文本

清单6 的FixedColumnWidth1.py说明了如何打印固定宽度的文本。

  • 清单6 FixedColumnWidth1.py
<ol ><pre class='brush:php;toolbar:false;'>import string 
left = 0 
right = 0 
columnWidth = 8 
str1 = 'this is a string with a set of words in it and it will be split into a fixed column width' 
strLen = len(str1) 
print('Left-justified column:')  
print('----------------------')  
rowCount = int(strLen/columnWidth) 
for i in range(0,rowCount): 
   left  = i*columnWidth 
   right = (i+1)*columnWidth-1 
   word  = str1[left:right] 
   print("%-10s" % word) 
# check for a 'partial row' 
if(rowCount*columnWidth < strLen): 
   left  = rowCount*columnWidth-1; 
   right = strLen 
   word  = str1[left:right] 
   print("%-10s" % word) 
Copier après la connexion

清单6初始化整型变量columnWidth和字符串类型变量str1。变量strLen是str1的长度,变量rowCount是strLen除以columnWidth的值。之后通过循环打印rowCount行,每行包含columnWidth个字符。代码的最后部分输出所有“剩余”的字符。清单6的输出如下所示:

4. 使用split()函数比较文本字符串

清单7 的CompareStrings1.py说明了如何判断一个文本字符串中的单词是否出现在另一个文本字符串中。

  • 清单7 CompareStrings1.py
<ol ><pre class='brush:php;toolbar:false;'>text1 = 'a b c d' 
text2 = 'a b c e d' 
if(text2.find(text1) >= 0): 
  print('text1 is a substring of text2') 
else: 
  print('text1 is not a substring of text2') 
subStr = True 
for w in text1.split(): 
  if(text2.find(w) == -1): 
    subStr = False 
    break 
if(subStr == True): 
  print('Every word in text1 is a word in text2') 
else: 
  print('Not every word in text1 is a word in text2') 
Copier après la connexion

清单7 首先初始化两个字符串变量text1和text2,然后通过条件逻辑判断字符串text2是否包含了text1(并输出相应打印信息)。

清单7的后半部分通过一个循环遍历字符串text1中的每个单词,并判断其是否出现在text2中。如果发现有匹配失败的情况,就设置变量subStr为False,并通过break语句跳出循环,提前终止for循环的执行。最后根据变量subStr的值打印对应的信息。清单7的输出如下所示:

05 用基础的for循环显示字符串中的字符

清单8 的StringChars1.py说明了如何打印一个文本字符串中的字符。

  • 清单8 StringChars1.py
<ol ><pre class='brush:php;toolbar:false;'>text = 'abcdef' 
for ch in text: 
   print('char:',ch,'ord value:',ord(ch)) 
print 
Copier après la connexion

清单8 的代码简单直接地通过一个for循环遍历字符串text并打印它的每个字符以及字符的ord值(ASCII 码)。清单8 的输出如下所示:

06 join()函数

另一个去掉多余空格的方法是使用join()函数,代码示例如下所示:

split()函数将一个文本字符串“分割”为一系列的单词,同时去掉多余的空格。接下来join()函数使用一个空格作为分隔符将字符串text1中的单词连接在一起。上述代码的最后部分使用字符串XYZ替换空格作为分隔符,执行相同的连接操作。上述代码的输出如下:

关于作者:奥斯瓦尔德·坎佩萨托(OswaldCampesato),专门研究深度学习、Java、Android和TensorFlow。他是25本书的作者/合著者。

本文摘编自《机器学习入门:Python语言实现》,经出版方授权发布。(ISBN:9787111695240)

 

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

PHP et Python: différents paradigmes expliqués PHP et Python: différents paradigmes expliqués Apr 18, 2025 am 12:26 AM

PHP est principalement la programmation procédurale, mais prend également en charge la programmation orientée objet (POO); Python prend en charge une variété de paradigmes, y compris la POO, la programmation fonctionnelle et procédurale. PHP convient au développement Web, et Python convient à une variété d'applications telles que l'analyse des données et l'apprentissage automatique.

Choisir entre PHP et Python: un guide Choisir entre PHP et Python: un guide Apr 18, 2025 am 12:24 AM

PHP convient au développement Web et au prototypage rapide, et Python convient à la science des données et à l'apprentissage automatique. 1.Php est utilisé pour le développement Web dynamique, avec une syntaxe simple et adapté pour un développement rapide. 2. Python a une syntaxe concise, convient à plusieurs champs et a un écosystème de bibliothèque solide.

Python vs JavaScript: la courbe d'apprentissage et la facilité d'utilisation Python vs JavaScript: la courbe d'apprentissage et la facilité d'utilisation Apr 16, 2025 am 12:12 AM

Python convient plus aux débutants, avec une courbe d'apprentissage en douceur et une syntaxe concise; JavaScript convient au développement frontal, avec une courbe d'apprentissage abrupte et une syntaxe flexible. 1. La syntaxe Python est intuitive et adaptée à la science des données et au développement back-end. 2. JavaScript est flexible et largement utilisé dans la programmation frontale et côté serveur.

Le code Visual Studio peut-il être utilisé dans Python Le code Visual Studio peut-il être utilisé dans Python Apr 15, 2025 pm 08:18 PM

VS Code peut être utilisé pour écrire Python et fournit de nombreuses fonctionnalités qui en font un outil idéal pour développer des applications Python. Il permet aux utilisateurs de: installer des extensions Python pour obtenir des fonctions telles que la réalisation du code, la mise en évidence de la syntaxe et le débogage. Utilisez le débogueur pour suivre le code étape par étape, trouver et corriger les erreurs. Intégrez Git pour le contrôle de version. Utilisez des outils de mise en forme de code pour maintenir la cohérence du code. Utilisez l'outil de liaison pour repérer les problèmes potentiels à l'avance.

PHP et Python: une plongée profonde dans leur histoire PHP et Python: une plongée profonde dans leur histoire Apr 18, 2025 am 12:25 AM

PHP est originaire en 1994 et a été développé par Rasmuslerdorf. Il a été utilisé à l'origine pour suivre les visiteurs du site Web et a progressivement évolué en un langage de script côté serveur et a été largement utilisé dans le développement Web. Python a été développé par Guidovan Rossum à la fin des années 1980 et a été publié pour la première fois en 1991. Il met l'accent sur la lisibilité et la simplicité du code, et convient à l'informatique scientifique, à l'analyse des données et à d'autres domaines.

Peut-on exécuter le code sous Windows 8 Peut-on exécuter le code sous Windows 8 Apr 15, 2025 pm 07:24 PM

VS Code peut fonctionner sur Windows 8, mais l'expérience peut ne pas être excellente. Assurez-vous d'abord que le système a été mis à jour sur le dernier correctif, puis téléchargez le package d'installation VS Code qui correspond à l'architecture du système et l'installez comme invité. Après l'installation, sachez que certaines extensions peuvent être incompatibles avec Windows 8 et doivent rechercher des extensions alternatives ou utiliser de nouveaux systèmes Windows dans une machine virtuelle. Installez les extensions nécessaires pour vérifier si elles fonctionnent correctement. Bien que le code VS soit possible sur Windows 8, il est recommandé de passer à un système Windows plus récent pour une meilleure expérience de développement et une meilleure sécurité.

Comment exécuter des programmes dans Terminal Vscode Comment exécuter des programmes dans Terminal Vscode Apr 15, 2025 pm 06:42 PM

Dans VS Code, vous pouvez exécuter le programme dans le terminal via les étapes suivantes: Préparez le code et ouvrez le terminal intégré pour vous assurer que le répertoire de code est cohérent avec le répertoire de travail du terminal. Sélectionnez la commande Run en fonction du langage de programmation (tel que Python de Python your_file_name.py) pour vérifier s'il s'exécute avec succès et résoudre les erreurs. Utilisez le débogueur pour améliorer l'efficacité du débogage.

L'extension VScode est-elle malveillante? L'extension VScode est-elle malveillante? Apr 15, 2025 pm 07:57 PM

Les extensions de code vs posent des risques malveillants, tels que la cachette de code malveillant, l'exploitation des vulnérabilités et la masturbation comme des extensions légitimes. Les méthodes pour identifier les extensions malveillantes comprennent: la vérification des éditeurs, la lecture des commentaires, la vérification du code et l'installation avec prudence. Les mesures de sécurité comprennent également: la sensibilisation à la sécurité, les bonnes habitudes, les mises à jour régulières et les logiciels antivirus.

See all articles