Maison développement back-end Tutoriel Python Écrivez une méthode de calcul en utilisant des expressions régulières Python

Écrivez une méthode de calcul en utilisant des expressions régulières Python

Mar 22, 2017 am 10:14 AM
python正则表达式

Écrivez une méthode de calcul en utilisant des expressions régulières Python

#!/usr/bin/evn python
import re
def deal_negative_issue(calc_list):
new_calc_list =[] #Définissez une nouvelle liste vide, puis placez les données dans la nouvelle liste une fois le filtrage terminé
for index,item in enumerate(calc_list):
if item.strip().endswith("*") ou item.strip().endswith("/") : #Sélectionnez la chaîne se terminant par un signe de multiplication ou un signe de division
new_calc_list.append("%s-%s"%(calc_list[index],calc_list[index 1])) #Le traitement des chaînes d'épissage est similaire à 2*5/-3
# elif ( " *" ou "/") dans l'élément : #Trouvez les options avec multiplication et division dans la liste. J'ai essayé cette façon d'écrire et il semble que cela ne corresponde qu'à *, mais 40/5 seul ne correspond pas à
elif. ("/" ) dans l'élément ou ("*") dans l'élément :
                                                                                                     > return new_calc_list

def deal_unusual_issue(formula):
formula = formula.replace(" "," ")
formula = formula.replace(" -", " -") formula = formula.replace("- ", "-") formula = formula.replace("- -", " ")
formula = formula.replace("- -" , " ")
return formula

# def addition_and_subtraction(formula):
# sub_calc_list = re.split ("[ -]",formula)
# sub_operator_list = re.findall( "[ -]",formula)
# print(type(sub_calc_list), sub_operator_list)
# totle_res = Aucun
# for index,i in enumerate(sub_calc_list):
# if totle_res : # SUB_RES est vrai, indiquant que ce n'est pas la première fois que
boucle

#if sub_operator_list [Index-] = = "":#pour déterminer si l'index dans la SUB_OPERATOR_LIST est déterminé si =
float
(i)
#                                                                                                                                            sub_res = float(i) # print(totle_res)

def calculator(formula): print("operating",formula) calc_list = re.split("[ -]",formula ) #Séparez chaque opération de multiplication et de division par - symbole
calc_list = deal_negative_issue(calc_list) print(calc_list) pour l'élément dans calc_list :
sub_calc_list = re.split("[*/]" , Item) Sub_oprator_list = Re.findall (" [*/]", item)#Divisez le nombre de multiplication pour séparer le nombre
Print (sub_calc_list, sub_oprator_list)
sub_res = none
for index,i in enumerate(sub_calc_list):
if sub_res : #sub_res est vrai, indiquant que ce n'est pas le premier cycle
if sub_operator_list[index-1]=="*":       #Déterminer s'il s'agit d'une addition ou d'une soustraction via l'index dans sub_operator_list,                                                                                                                                    sub_res /= float(i ) Sinon :
sub_res = Float (i)

Imprimer ("[%s] ="%item, sub_res)
Formule = Formule.replace (ITEM, STR (SUB_RS)) )
formule = deal_unusual_issue(formula)
print(formule )

#Calculation-Method
totle_calc_list = re.split("[ -]", formula)
totle_operator_list =re .findall("[ -]", formula) # Séparez la multiplication et signes de division dans une liste
print(totle_calc_list, totle_operator_list)
totle_res = None
pour index, élément dans enumerate(totle_calc_list) :
si totle_res : #sub_res est vrai, indiquant que ce n'est pas le premier cycle
if totle_operator_list[index-1]==" " : #Déterminer s'il s'agit d'une addition ou d'une soustraction via l'index dans sub_operator_list,
totle_re s = float(item)
                                                                                                                                                                                            #formule de retour
print("[result]= ", totle_res)
return totle_res

def calc(formula):
parenthèses_flag = True
calc_res = None

while
parentheses_flag:
m = re.search("([^()]*)",formula) #Trouvez les crochets inférieurs, trouvez
un par un print(m)
if m:
# print(type(m .group ()))
Subformula = m.group (). Strip ("(" () ")#Décollez les parenthèses trouvées de
Subres = Calculating (sous-formule) Formule = formule.replace (m .group(),str(subres))                                                                                                                                                                                                                        🎜 >
if nom == '
main
' :
res = calc("1 - 2 * ( (60-30 (9-2*5/-3 7 /3*99/ 4*2998 10 * 568/14 ) * (40/5)) - (4*3)/ (16-3* 2) )")
#res = calc("2 * (40/5)" )

#Remarque : la fonction -40/5 n'est pas implémentée

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

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

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)

Comment utiliser les expressions régulières Python pour le traitement de fichiers Word Comment utiliser les expressions régulières Python pour le traitement de fichiers Word Jun 22, 2023 am 09:57 AM

L'expression régulière Python est un outil de correspondance puissant qui peut nous aider à identifier et à remplacer rapidement le texte, les styles et les formats dans le traitement des fichiers Word. Cet article explique comment utiliser les expressions régulières Python pour le traitement de fichiers Word. 1. Installez la bibliothèque Python-docx Python-docx est une bibliothèque fonctionnelle permettant de traiter des documents Word en Python. Vous pouvez l'utiliser pour lire, modifier, créer et enregistrer rapidement des documents Word. Avant d'utiliser Python-docx, vous devez vous assurer

Comment utiliser les expressions régulières Python pour traiter des nombres et des montants Comment utiliser les expressions régulières Python pour traiter des nombres et des montants Jun 23, 2023 am 08:21 AM

Les expressions régulières Python sont un outil puissant qui nous aide à effectuer une correspondance et une recherche précises et efficaces dans les données texte. Les expressions régulières sont également extrêmement utiles dans le traitement des nombres et des montants, et peuvent trouver et extraire avec précision les informations sur le nombre et le montant. Cet article expliquera comment utiliser les expressions régulières Python pour traiter des nombres et des montants, aidant ainsi les lecteurs à mieux faire face aux tâches réelles de traitement des données. 1. Traiter les nombres 1. Faire correspondre les nombres entiers et les nombres à virgule flottante Dans les expressions régulières, pour faire correspondre les nombres entiers et les nombres à virgule flottante, vous pouvez utiliser d+ pour la correspondance.

Comment utiliser les expressions régulières Python pour la segmentation des mots Comment utiliser les expressions régulières Python pour la segmentation des mots Jun 23, 2023 am 10:37 AM

Les expressions régulières Python sont un outil puissant pour traiter les données textuelles. Dans le traitement du langage naturel, la segmentation des mots est une tâche importante qui sépare un texte en mots individuels. En Python, nous pouvons utiliser des expressions régulières pour effectuer la tâche de segmentation des mots. Ce qui suit utilisera Python3 comme exemple pour présenter comment utiliser les expressions régulières pour la segmentation de mots. Importer le module re Le module re est le module d'expression régulière intégré à Python. Vous devez d'abord importer le module. importer le texte de définition

Comment utiliser les expressions régulières Python pour l'orchestration de conteneurs Comment utiliser les expressions régulières Python pour l'orchestration de conteneurs Jun 22, 2023 am 09:16 AM

Dans l'orchestration de conteneurs, nous devons souvent filtrer, faire correspondre et remplacer certaines informations. Python fournit des expressions régulières, un outil puissant qui peut nous aider à réaliser ces opérations. Cet article explique comment utiliser les expressions régulières Python pour l'orchestration de conteneurs, y compris des connaissances de base sur les expressions régulières, comment utiliser le module Pythonre et certaines applications d'expressions régulières courantes. 1. Connaissance de base des expressions régulières L'expression régulière (RegularExpression) fait référence à un modèle de texte, utilisé

Comment utiliser les expressions régulières Python pour l'extraction de contenu Comment utiliser les expressions régulières Python pour l'extraction de contenu Jun 22, 2023 pm 03:04 PM

Python est un langage de programmation de haut niveau largement utilisé avec un riche ensemble de bibliothèques et d'outils qui rendent l'extraction de contenu plus facile et plus efficace. Parmi elles, les expressions régulières sont un outil très important, et Python fournit le module re pour utiliser des expressions régulières pour l'extraction de contenu. Cet article vous présentera les étapes spécifiques d'utilisation des expressions régulières Python pour l'extraction de contenu. 1. Comprendre la syntaxe de base des expressions régulières Avant d'utiliser les expressions régulières Python pour l'extraction de contenu, vous devez d'abord comprendre la syntaxe de base des expressions régulières.

Comment utiliser les expressions régulières Python pour les structures de données et les algorithmes Comment utiliser les expressions régulières Python pour les structures de données et les algorithmes Jun 22, 2023 pm 08:01 PM

L'expression régulière Python est un outil de traitement de chaînes basé sur la correspondance de modèles, qui peut nous aider à extraire rapidement et efficacement les informations requises du texte. Dans les structures de données et les algorithmes, les expressions régulières peuvent être utilisées pour implémenter la correspondance de texte, le remplacement, la segmentation et d'autres fonctions, offrant ainsi un support plus puissant à notre programmation. Cet article explique comment utiliser les expressions régulières Python pour les structures de données et les algorithmes. 1. Connaissances de base des expressions régulières Avant de commencer, comprenons d'abord quelques connaissances de base des expressions régulières : Jeu de caractères : représenté par des crochets,

Comment utiliser les expressions régulières Python pour l'esthétique du code et l'expérience utilisateur Comment utiliser les expressions régulières Python pour l'esthétique du code et l'expérience utilisateur Jun 22, 2023 am 08:45 AM

Dans le développement de logiciels, l’esthétique du code et l’expérience utilisateur sont souvent ignorées, ce qui entraîne de nombreux problèmes logiciels lors de leur utilisation réelle. Python, en tant que langage de programmation puissant, fournit des expressions régulières comme un outil puissant pour nous aider à résoudre ces problèmes. Cet article explique comment utiliser les expressions régulières Python pour l'esthétique du code et l'expérience utilisateur. 1. Introduction aux expressions régulières Python Les expressions régulières sont un langage qui décrit des modèles de texte et peut être utilisé pour faire correspondre, rechercher, remplacer et diviser du texte. Le module re de Python fournit

Comment utiliser les expressions régulières Python pour la refactorisation du code Comment utiliser les expressions régulières Python pour la refactorisation du code Jun 23, 2023 am 09:44 AM

Dans le codage quotidien, nous devons souvent modifier et reconstruire le code pour augmenter la lisibilité et la maintenabilité du code. Les expressions régulières sont l’un des outils importants. Cet article présentera quelques techniques courantes sur la façon d'utiliser les expressions régulières Python pour la refactorisation du code. 1. Rechercher et remplacer L'une des fonctions les plus couramment utilisées des expressions régulières est la recherche et le remplacement. Supposons que nous devions remplacer toutes les instructions d'impression du code par des instructions de journalisation. Nous pouvons utiliser l’expression régulière suivante pour rechercher : prints*((.

See all articles