Article
FONT SIZE :
fontsize_dec
fontsize_inc
Auteur: Admin
Vues: 2
Temps: 09:47:10 | 3 années depuis

Comment programmer en Perl


Si vous utilisez un système Unix, votre interpréteur Perl se trouve dans/usr/local/bin/perl local. Si vous êtes sous Windows, vous devez télécharger une plate-forme.

Etape 1

Votre premier programme Perl


Prenez le texte suivant et le placer dans un fichier appelé first.pl:

#!/Usr/local/bin/perl print "Bonjour \ n" local;

(Traditionnellement, les premiers programmes sont tenus de dire Bonjour tout le monde! ,, Mais je suis un iconoclaste.)

Maintenant, exécutez-le avec votre interpréteur Perl. Depuis une ligne de commande, passez dans le répertoire avec le fichier et le type first.pl perl. Vous devriez voir:

Bonjour!

\ N est la nouvelle ligne '«caractère»; sans elle, Perl ne saute pas à une nouvelle ligne de texte seul.

Etape 2

Fonctions et états

Perl dispose d'une riche bibliothèque de fonctions. Les verbes de Perl, les commandes que l'interprète est exécutée. Vous pouvez afficher la liste de toutes les fonctions intégrées dans la page principale perlfunc. Presque toutes les fonctions peuvent être donnés une liste de paramètres, séparés par des virgules.

La fonction de la presse est l'un des plus fréquemment utilisé par Perl. Il est utilisé pour afficher des choses sur l'écran ou d'envoyer des informations à un fichier (dont nous parlerons dans le prochain article). Elle prend une liste de choses à la sortie de ses paramètres.

print "Il s'agit d'une simple déclaration." print "Regardez,", "un", "liste";

Un programme Perl est constitué d'états, dont chacun se termine par un point-virgule. Les états n'ont pas besoin d'être sur des lignes distinctes; il peut y avoir plusieurs instructions sur une ligne ou une seule instruction peut être réparti sur plusieurs lignes.

print "C'est"; imprimer "deux états. \ n"; print "Mais ce", "est une seule instruction \ n".

Étape 3

Nombres, des chaînes et des devis

Il existe deux types de données de base en Perl: nombres et les chaînes.

Les chiffres sont faciles; tout ce que nous avions à faire avec eux. La seule chose que vous devez savoir est que vous ne saisissez pas virgules ou des espaces dans les numéros en Perl. Toujours écrire 10.000, 10.000 ou 10.000 pas.

Les cordes sont un peu plus complexe. Une chaîne est un ensemble de caractères entre guillemets simples ou doubles:

"Ceci est un test."Bonjour, \ n"

La différence entre guillemets simples et doubles à guillemets simples signifie que leur contenu doivent être prises à la lettre, tandis que des guillemets signifient que leur contenu doivent être interprétés. Par exemple, le caractère séquence \ n est un caractère de nouvelle ligne quand il apparaît dans une chaîne entre guillemets, mais il est littéralement deux caractères barre oblique inverse, fr, quand il apparaît dans les citations.

imprimer "Cette chaîne \ nshows sur deux lignes." print 'La chaîne \ n apparaît sur un.';

(Les deux autres séquences sont utiles barre oblique inverse \ t pour insérer un caractère de tabulation, et \\ pour insérer une barre oblique inverse dans une chaîne entre guillemets.)

Étape 4

Variables

Si les fonctions sont des verbes de Perl, les variables sont leurs noms. Perl dispose de trois types de variables: les scalaires, les tableaux et les tables de hachage. Considérez-les comme des «choses, '' 'listes,' 'et' les dictionnaires. '' En Perl, tous les noms de variables sont un caractère de ponctuation, une lettre ou un trait de soulignement, et un ou plusieurs caractères alphanumériques ou des traits de soulignement.

Scalaires sont des choses individuelles. Cela pourrait être un nombre ou une chaîne. Le nom d'un scalaire commence par un signe de dollar, comme $ ou $ boulier. Vous pouvez assigner une valeur à un scalaire dire Perl, ce qui revient, de cette façon:

$ I = 5; $ Pie_flavor = 'pomme'; $ Constitution1776 = "We the People, etc";

Il n'est pas nécessaire de spécifier si un scalaire est un nombre ou une chaîne. Ce n'est pas grave, parce que quand Perl a besoin pour traiter un scalaire comme une chaîne, il fait; quand vous avez besoin de le traiter comme un nombre, il le fait. La conversion se fait automatiquement. (Ceci est différent de la plupart des autres langues, dans lequel les chaînes et les nombres sont deux différents types de données.)

Si vous utilisez une chaîne entre guillemets, Perl insérer la valeur de toutes les variables scalaires est le nom de la chaîne. Ceci est souvent utilisé pour remplir les cordes à la volée:

$ Apple_count = 5; $ Count_report = "Il ya $ pommes de apple_count." print "La valeur est: $ count_report \ n";

Le résultat de ce code de fin est le rapport: Il existe 5 pommes ..

Les numéros de Perl peuvent être manipulées avec les opérations mathématiques usuelles: addition, multiplication, division et la soustraction. (Multiplication et la division sont indiqués dans Perl avec * et/symboles, entre autres.)

$ A = 5; $ B $ a + = 10; # $ B $ 15 est maintenant égale à b * c = 10 $; # $ C est maintenant égale à 150 $ a = $ a - 1; # $ A est maintenant 4, et les enseignants de l'algèbre sont servile.

Vous pouvez également utiliser les opérateurs spéciaux ++, -, + =, - =,/= et * =. Il s'agit de manipuler la valeur d'un scalaire sans la nécessité d'utiliser deux éléments d'une équation. Certaines personnes comme eux, d'autres pas. J'aime le fait qu'ils peuvent rendre le code plus clair.

$ A = 5; $ A ++; # $ A est maintenant 6; nous avons ajouté 1 à il. $ A + = 10; # Il est maintenant 16; nous avons ajouté 10 $/= 2; # E divisée par deux, il en est de huit.

Cordes en Perl n'a pas tout à fait autant de souplesse. A propos de la seule base de l'opérateur qui peut être utilisé sur des chaînes est la concaténation, qui est de 10 $ façon de dire `mis en place. '' L'opérateur de concaténation est la période. Concaténation et plus sont deux choses différentes:

A $ = "8"; # Notez les guillemets. $ A est une chaîne. $ B $ a + = "1"; # "1" est une chaîne trop. $ C = $ a. "1"; Mais # $ b $ et C ont des valeurs différentes!

Rappelez-vous que Perl convertit chaînes en nombres transparente chaque fois qu'il est nécessaire, afin d'obtenir la valeur de b $, l'interpréteur Perl converti les deux chaînes "8" et "1" pour les chiffres, alors ajouté. La valeur de $ b est le nombre 9 Cependant, $ c de concaténation utilisé, si sa valeur est la chaîne "81".

Rappelez-vous, le signe plus additionne les nombres et la période met cordes.

Les tableaux sont des listes de scalaires. Les noms de tableaux commencent par @. Vous pouvez définir des tableaux par lister leur contenu entre parenthèses, séparées par des virgules:

lotto_numbers = (1, 2, 3, 4, 5, 6); # Hey, ça peut arriver. mois = ("Juillet", "Août", "Septembre");

Le contenu d'un tableau sont indexés à partir de 0 (1 Pourquoi pas, pourquoi. E 'une chose de l'ordinateur.) Pour récupérer les éléments d'un tableau, vous remplacez le symbole @ par un signe $, et de suivre ce que la position de index l'élément que vous voulez. (Il commence par un signe de dollar, parce que vous obtenez une valeur scalaire.) Vous pouvez également modifier en place, comme n'importe quel autre scalaire.

mois = ("Juillet", "Août", "Septembre"); impression $ mois [0]; # Ce communiqué de "Juillet." $ Mois [2] = "Smarch"; # Nous avons juste renommé septembre!

Si un réseau n'existe pas, entre autres, seront créées lors d'une tentative d'assigner une valeur à une de ses éléments.

$ Winter_months [0] = "Décembre"; # Cela crée implicitamentewinter_months.

Tableaux reviennent toujours à leur contenu dans le même ordre; si vous passez attraversomonths du début à la fin, peu importe combien de fois vous le faites, vous serez de retour en Juillet, Août et Septembre dans cet ordre. Si vous voulez trouver la longueur d'un tableau, utilisez la valeur $ # array_name. Ceci est un de moins que le nombre d'éléments dans le tableau. Si la matrice n'existe tout simplement pas ou est vide, # $ array_name est de -1. Si vous voulez redimensionner un tableau, il suffit de changer la valeur de $ # array_name.

mois = ("Juillet", "Août", "Septembre"); print $ # mois; # Cette impression 2 $ = a1 # autumn_months; # Nous n'avons pas unautumn_months, c'est donc -1. Mois $ # = 0; # Oramonths ne contient que "Juillet".

Les tables de hachage sont appelés `dictionnaires '' dans certains langages de programmation, et c'est ce qu'ils sont: un terme et une définition, ou dans un langage plus approprié à une clé et une valeur. Chaque clé dans une table de hachage a une et une seule valeur. Le nom d'un hachage commence avec un signe pour cent, comme% des parents. Vous pouvez définir les paires de hachage séparés par des virgules clé et de la valeur, comme ceci:

Days_in_month% = ("Juillet" => 31, "Août" => 31, "Septembre" => 30);

Vous pouvez récupérer une valeur d'un hachage par référence à hashname {$ key}, ou de le modifier en place comme n'importe quel autre scalaire.

print $ {days_in_month "Septembre"}; # 30, bien sûr. $ Days_in_month {"Février"} = 29; # Il s'agit d'une année bissextile.

Si vous voulez voir ce que les clés sont dans un hachage, vous pouvez utiliser les touches de fonction avec le nom de la table de hachage. Cela renvoie une liste contenant toutes les clés de hachage. La liste n'est pas toujours dans le même ordre, bien; alors que nous pouvions toujours compter sumonths de revenir en Juillet, Août, Septembre, dans cet ordre, l'% days_in_summer pourrait les retourner dans n'importe quel ordre que ce soit.

month_list = keys% days_in_summer; #month_list est maintenant («Juillet», «Septembre», «Août»)!

Les trois types de variables ont trois espaces de noms distincts. Cela signifie que $ boulier eabacus sont deux variables différentes, et $ boulier [0] (le premier élément diabacus) n'est pas le même que $ boulier {0} (la valeur de l'abaque qui a la touche 0).

Etape 5

Commentaires

Notez que dans certains exemples de code dans la section précédente, j'ai utilisé les commentaires de code. Ceux-ci sont utiles pour expliquer ce qu'est un morceau de code particulier, et d'une importance vitale pour n'importe quel morceau de code que vous voulez changer, améliorer, corriger, ou tout simplement regarder à nouveau. (C'est-à-dire, les commentaires sont d'une importance vitale pour l'ensemble du code.)

Tout cela dans une ligne de code Perl qui suit un signe # est un commentaire. (Sauf, bien sûr, si le signe # apparaît dans une chaîne.)

imprimer "Bonjour tout le monde \ n"; # C'est mieux comme ça. # Toute cette ligne est un commentaire.

Etape 6

Loops

Presque chaque fois que vous écrivez un programme, vous aurez besoin d'utiliser une boucle. Boucles vous permettent d'exécuter un morceau de code particulier, encore et encore. Cela fait partie d'un concept général de contrôle de flux de programmation appelé.

Perl dispose de plusieurs fonctions qui sont utiles pour le contrôle de flux, la plus fondamentale de ce qui est pour. Lorsque vous utilisez la fonction, vous spécifiez une variable qui sera utilisée pour l'indice de la boucle, et une liste de valeurs pour exécuter une boucle. Dans une paire de bretelles, vous mettez le code que vous voulez exécuter au cours du cycle:

pour $ i (1, 2, 3, 4, 5) {print "$ i \ n"; }

Ce cycle imprimer les numéros de 1 à 5, chacun sur une ligne distincte.

Un raccourci utile de définir la boucle utilise .. pour spécifier une plage de numéros. Vous pouvez écrire (1, 2, 3, 4, 5) (1 .. 5). Vous pouvez également utiliser des tableaux et des scalaires dans votre liste de boucle. Essayez ce code et voir ce qui se passe:

one_to_ten = (1 .. 10); Top_limit = 25 $; pour $ i (one_to_ten, 15, 20 .. $ top_limit) {print "$ i \ n"; }

Les entrées dans le cycle de la liste n'a pas besoin d'être des nombres; peut être utilisé tout aussi bien des chaînes. Si le hachage% month_has contient les noms des mois et le nombre de jours de chaque mois, vous pouvez utiliser les touches de fonction pour passer par eux.

pour $ i (keys% month_has) {print "$ i $ a month_has {$ i} jours. \ n"; Pour Marx} $ ('Groucho »,« Harpo »,« Zeppo', 'Karl') {print "$ marx est mon frère Marx favori. \ N"; }

Photos

Ce sont les bases de Perl.

Commentaires (0)
Sans commentaires

Ajouter un commentaire

smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile
Caractères restants: 3000
captcha