Perl - Variablen

Variablen sind die reservierten Speicherplätze zum Speichern von Werten. Dies bedeutet, dass Sie beim Erstellen einer Variablen Speicherplatz im Speicher reservieren.

Basierend auf dem Datentyp einer Variablen weist der Interpreter Speicher zu und entscheidet, was im reservierten Speicher gespeichert werden kann. Durch Zuweisen verschiedener Datentypen zu Variablen können Sie daher Ganzzahlen, Dezimalstellen oder Zeichenfolgen in diesen Variablen speichern.

Wir haben erfahren, dass Perl die folgenden drei grundlegenden Datentypen hat:

  • Scalars
  • Arrays
  • Hashes

Dementsprechend werden wir in Perl drei Arten von Variablen verwenden. EINscalarVor der Variablen steht ein Dollarzeichen ($), in dem entweder eine Zahl, eine Zeichenfolge oder eine Referenz gespeichert werden kann. EinarrayVor der Variablen steht das Zeichen @ und es werden geordnete Listen von Skalaren gespeichert. Endlich dieHash Die Variable wird durch das Vorzeichen% vorangestellt und zum Speichern von Sätzen von Schlüssel / Wert-Paaren verwendet.

Perl verwaltet jeden Variablentyp in einem separaten Namespace. Sie können also ohne Angst vor Konflikten denselben Namen für eine skalare Variable, ein Array oder einen Hash verwenden. Dies bedeutet, dass $ foo und @foo zwei verschiedene Variablen sind.

Variablen erstellen

Perl-Variablen müssen nicht explizit deklariert werden, um Speicherplatz zu reservieren. Die Deklaration erfolgt automatisch, wenn Sie einer Variablen einen Wert zuweisen. Das Gleichheitszeichen (=) wird verwendet, um Variablen Werte zuzuweisen.

Beachten Sie, dass dies obligatorisch ist, um eine Variable zu deklarieren, bevor wir sie verwenden, wenn wir sie verwenden use strict Aussage in unserem Programm.

Der Operand links vom Operator = ist der Name der Variablen, und der Operand rechts vom Operator = ist der in der Variablen gespeicherte Wert. Zum Beispiel -

$age = 25;             # An integer assignment
$name = "John Paul";   # A string 
$salary = 1445.50;     # A floating point

Hier sind 25, "John Paul" und 1445.50 die Werte, die den Variablen " Alter" , " Name" und " Gehalt " zugewiesen sind . In Kürze werden wir sehen, wie wir Arrays und Hashes Werte zuweisen können.

Skalare Variablen

Ein Skalar ist eine einzelne Dateneinheit. Diese Daten können eine Ganzzahl, ein Gleitkomma, ein Zeichen, eine Zeichenfolge, ein Absatz oder eine gesamte Webseite sein. Einfach zu sagen, es könnte alles sein, aber nur eine einzige Sache.

Hier ist ein einfaches Beispiel für die Verwendung skalarer Variablen:

#!/usr/bin/perl

$age = 25;             # An integer assignment
$name = "John Paul";   # A string 
$salary = 1445.50;     # A floating point

print "Age = $age\n";
print "Name = $name\n";
print "Salary = $salary\n";

Dies führt zu folgendem Ergebnis:

Age = 25
Name = John Paul
Salary = 1445.5

Array-Variablen

Ein Array ist eine Variable, die eine geordnete Liste von Skalarwerten speichert. Array-Variablen wird ein "at" (@) vorangestellt. Um auf ein einzelnes Element eines Arrays zu verweisen, verwenden Sie das Dollarzeichen ($) mit dem Variablennamen, gefolgt vom Index des Elements in eckigen Klammern.

Hier ist ein einfaches Beispiel für die Verwendung von Array-Variablen:

#!/usr/bin/perl

@ages = (25, 30, 40);             
@names = ("John Paul", "Lisa", "Kumar");

print "\$ages[0] = $ages[0]\n";
print "\$ages[1] = $ages[1]\n";
print "\$ages[2] = $ages[2]\n";
print "\$names[0] = $names[0]\n";
print "\$names[1] = $names[1]\n";
print "\$names[2] = $names[2]\n";

Hier haben wir das Escape-Zeichen (\) vor dem $ -Zeichen verwendet, um es zu drucken. Andere Perl verstehen es als Variable und drucken seinen Wert. Bei der Ausführung wird das folgende Ergebnis erzielt:

$ages[0] = 25
$ages[1] = 30
$ages[2] = 40
$names[0] = John Paul
$names[1] = Lisa
$names[2] = Kumar

Hash-Variablen

Ein Hash ist eine Menge von key/valuePaare. Vor Hash-Variablen steht ein Prozentzeichen (%). Um auf ein einzelnes Element eines Hash zu verweisen, verwenden Sie den Namen der Hash-Variablen, gefolgt von dem "Schlüssel", der dem Wert in geschweiften Klammern zugeordnet ist.

Hier ist ein einfaches Beispiel für die Verwendung von Hash-Variablen:

#!/usr/bin/perl

%data = ('John Paul', 45, 'Lisa', 30, 'Kumar', 40);

print "\$data{'John Paul'} = $data{'John Paul'}\n";
print "\$data{'Lisa'} = $data{'Lisa'}\n";
print "\$data{'Kumar'} = $data{'Kumar'}\n";

Dies führt zu folgendem Ergebnis:

$data{'John Paul'} = 45
$data{'Lisa'} = 30
$data{'Kumar'} = 40

Variabler Kontext

Perl behandelt dieselbe Variable je nach Kontext unterschiedlich, dh in der Situation, in der eine Variable verwendet wird. Schauen wir uns das folgende Beispiel an:

#!/usr/bin/perl

@names = ('John Paul', 'Lisa', 'Kumar');

@copy = @names;
$size = @names;

print "Given names are : @copy\n";
print "Number of names are : $size\n";

Dies führt zu folgendem Ergebnis:

Given names are : John Paul Lisa Kumar
Number of names are : 3

Hier ist @names ein Array, das in zwei verschiedenen Kontexten verwendet wurde. Zuerst haben wir es in ein anderes Array, dh eine Liste, kopiert, sodass alle Elemente zurückgegeben wurden, vorausgesetzt, der Kontext ist Listenkontext. Als nächstes haben wir dasselbe Array verwendet und versucht, dieses Array in einem Skalar zu speichern. In diesem Fall wurde nur die Anzahl der Elemente in diesem Array zurückgegeben, vorausgesetzt, der Kontext ist ein skalarer Kontext. Die folgende Tabelle listet die verschiedenen Kontexte auf -

Sr.Nr. Kontext & Beschreibung
1

Scalar

Die Zuordnung zu einer skalaren Variablen wertet die rechte Seite in einem skalaren Kontext aus.

2

List

Die Zuweisung zu einem Array oder einem Hash wertet die rechte Seite in einem Listenkontext aus.

3

Boolean

Boolescher Kontext ist einfach jeder Ort, an dem ein Ausdruck ausgewertet wird, um festzustellen, ob er wahr oder falsch ist.

4

Void

Diesem Kontext ist es nicht nur egal, wie hoch der Rückgabewert ist, er möchte nicht einmal einen Rückgabewert.

5

Interpolative

Dieser Kontext tritt nur in Anführungszeichen oder in Anführungszeichen auf.