De 69 bästa Perl-intervjufrågorna och -svaren (2025)

Här är Perl Scripting-intervjufrågor och svar för både fräscha och erfarna kandidater att få sitt drömjobb.

Perl-intervjufrågor för nybörjare

1) Skillnad mellan de variabler som chomp-funktionen fungerar i?

  • Skalär: Det betecknas med symbolen $. Variabel kan vara ett tal eller en sträng.
  • Array: Betecknas med symbolprefixet @. Matriser indexeras med siffror.

Namnutrymmet för dessa typer av variabler är annorlunda. Till exempel: @add, $add. De skalära variablerna finns i en tabell med namn eller namnutrymme och den kan innehålla enstaka specifik information åt gången och arrayvariabler finns i en annan tabell med namn eller namnutrymme. Skalära variabler kan vara antingen ett tal eller en sträng

👉 Gratis PDF-nedladdning: Perl-intervjufrågor och svar


2) Skapa en funktion som bara är tillgänglig inom det scope där den är definierad?

$pvt = Calculation(5,5);

print("Result = $pvt\n");

sub Calculation{

my ($fstVar, $secndVar) = @_;

my $square = sub{

return($_[0] ** 2);

};

return(&$square($fstVar) + &$square($secndVar));

};

Produktion: Resultat = 50


3) Vilken funktion i Perl ger kodåteranvändning? Ge något exempel på den funktionen.

Arvsfunktionen i Perl ger kodåteranvändning. I arv kan den underordnade klassen använda metoderna och egendomen för överordnad klass

Package Parent;

Sub foo

{

print("Inside A::foo\n");

}

package Child;

@ISA = (Parent);

package main;

Child->foo();

Child->bar();

4) I Perl kan vi visa varningarna med hjälp av några alternativ för att minska eller undvika felen. Vad är det för alternativ?

  • Kommandoradsalternativet -w: Det kommer att visa listan om varningsmeddelanden angående koden.
  • strikt pragma: Det tvingar användaren att deklarera alla variabler innan de kan användas med funktionen my().
  • Använda den inbyggda felsökaren: Det låter användaren bläddra igenom hela programmet rad för rad.
Perl Scripting intervjufrågor
Perl Scripting intervjufrågor

5) Skriv programmet för att bearbeta en lista med nummer.

Följande program ber användaren att ange siffror när det körs och medelvärdet av siffrorna visas som utdata:

$sum = 0;

$count = 0;

print "Enter number: ";

$num = <>;

chomp($num);

while ($num >= 0)

{

$count++;

$sum += $num;

print "Enter another number: ";

$num = <>;

chomp($num);

}

print "$count numbers were entered\n";

if ($count > 0)

{

print "The average is ",$sum/$count,"\n";

}

exit(0);

6) Har Perl föremål? Om ja, tvingar det dig då att använda föremål? Om nej, varför då?

Ja, Perl har objekt och det tvingar dig inte att använda objekt. Många objektorienterade moduler kan användas utan att förstå objekt. Men om programmet är för stort så är det effektivt för programmeraren att göra det objektorienterat.


7) Kan vi ladda binär tillägg dynamiskt?

Ja, vi kan ladda binär tillägg dynamiskt men ditt system stöder det. Om det inte stöder kan du statiskt kompilera tillägget.


8) Skriv ett program för att sammanfoga $firststring och $secondstring och resultatet av dessa strängar ska separeras med ett enda mellanslag.

Syntax:

$result = $firststring . " ".$secondstring;

Program:

#!/usr/bin/perl

$firststring = "abcd";

$secondstring = "efgh";

$combine = "$firststring $secondstring";

print "$Combine\n";

Produktion:

abcd efgh

9) Hur ersätter jag varje TAB-tecken i en fil med ett kommatecken?

perl -pi.bak -e 's/\t/,/g' myfile.txt

10) I Perl finns det några argument som används ofta. Vad är det för argument och vad betyder de?

-w (argument visar varning)

-d (används för felsökning)

-c (som kompilerar bara inte körs)

-e (som körs)

Vi kan också använda en kombination av dessa som:

-wd


11) Hur många typer av primära datastrukturer i Perl och vad betyder de?

Skalären: Den kan innehålla en specifik information åt gången (sträng, heltal eller referens). Det börjar med dollar $-tecken följt av Perl-identifieraren och Perl-identifieraren kan innehålla alfanumeriska och understreck. Det är inte tillåtet att börja med en siffra. Matriser är helt enkelt en lista med skalära variabler.

Arrayer: Matriser börjar med @-tecken. Exempel på array:

my @arrayvar = ("string a", "string b "string c");

Associativa arrayer: Det kallas också ofta hash, är den tredje stora datatypen i Perl efter skalärer och arrayer. Hashes namnges som sådana eftersom de fungerar väldigt likt en vanlig datastruktur som programmerare använder på andra språk – hashtabeller. Men hash i Perl är faktiskt en direkt språkstödd datatyp.


12) Vilka funktioner i Perl låter dig inkludera en modulfil eller en modul och vad är skillnaden mellan dem?

"använda sig av"

  • Metoden används endast för modulerna (endast för att inkludera fil av typen .pm)
  • De inkluderade objekten verifieras vid tidpunkten för sammanställningen.
  • Vi behöver inte ange filtillägget.
  • laddar modulen vid kompilering.

"behöva"

  • Metoden används för både bibliotek och moduler.
  • De inkluderade objekten verifieras under körningstiden.
  • Vi måste ange filtillägget.
  • Laddar vid körning.

anta att vi har en modulfil som "Module.pm"

använd Modul;

eller

kräver "Module.pm";

(kommer att göra detsamma)


13) Hur kan du definiera "mina" variablers omfattning i Perl och hur det skiljer sig från "lokala" variabelomfång?

$test = 2.3456;

{

my $test = 3;

print "In block, $test = $test ";

print "In block, $:: test = $:: test ";

}

print "Outside the block, $test = $test ";

print "Outside the block, $:: test = $::test ";

Produktion:

In block, $test = 3

In block, $::test = 2.3456

Outside the block, $test = 2.3456

Outside the block, $::test = 2.3456

Omfattningen av "min" variabelsynlighet finns bara i blocket, men om vi deklarerar en variabel lokal kan vi också komma åt den från utsidan av blocket. 'min' skapar en ny variabel, 'lokal' ändrar tillfälligt värdet på en variabel.


14) Vilka riktlinjer för Perl-moduler måste följas?

Nedan finns riktlinjer och är inte obligatoriska

Namnet på paketet ska alltid börja med stor bokstav.

Hela filnamnet ska ha tillägget ".pm".

Om ingen objektorienterad teknik används ska paketet härledas från klassen Exporter.

Om inga objektorienterade tekniker används bör modulen exportera sina funktioner och variabler till huvudnamnområdet med hjälp av arrayerna @EXPORT och @EXPOR_OK (användningsdirektivet används för att ladda modulerna).


Perl-intervjufrågor och svar för erfarna

Nedan är Perl Scripting intervjufrågor och svar för erfarna kandidater:

15) Hur används tolken i Perl?

Varje Perl-program måste passeras genom Perl-tolken för att kunna köras. Den första raden i många Perl-program är ungefär:

#!/usr/bin/perl

Tolken kompilerar programmet internt till ett analysträd. Alla ord, mellanslag eller märken efter en pundsymbol kommer att ignoreras av programtolken. Efter att ha konverterats till analysträd, kör tolken det omedelbart. Perl är allmänt känt som ett tolkat språk, är inte strikt sant. Eftersom tolken faktiskt konverterar programmet till byte-kod innan den körs, kallas det ibland en tolk/kompilator. Även om det kompilerade formuläret inte lagras som en fil.


16) "De metoder som definieras i den överordnade klassen kommer alltid att åsidosätta metoderna som definieras i basklassen". Vad betyder detta uttalande?

Ovanstående uttalande är ett koncept av polymorfism i Perl. För att förtydliga påståendet, låt oss ta ett exempel:

[perl]
package X;

sub foo

{

print("Inside X::foo\n");

}

package Z;

@ISA = (X);

sub foo

{

print("Inside Z::foo\n");

}

package main;

Z->foo();
[/perl]

Detta program visar:

Inuti Z::foo

– I exemplet ovan åsidosätter metoden foo() som definieras i klass Z arvet från klass X. Polymorfism används huvudsakligen för att lägga till eller utöka funktionaliteten för en befintlig klass utan att programmera om hela klassen.


17) För en situation inom programmering, hur kan du bestämma att Perl är en lämplig?

Om du behöver snabbare exekvering kommer Perl att ge dig det kravet. Det finns stor flexibilitet i programmering om du vill utveckla en webbaserad applikation. Vi behöver inte köpa licensen för Perl eftersom den är gratis. Vi kan använda CPAN (Comprehensive Perl Archive Network), som är en av de största förråden av gratis kod i världen.


18) Skriv syntax för att lägga till två arrayer tillsammans i perl?

@arrayvar = (@array1,@array2);

För att åstadkomma detsamma kan vi också använda push-funktionen.


19) Hur många typer av operatorer används i Perl?

Aritmetiska operatorer

+, - ,*

Uppdragsoperatörer:

+= , -+, *=

Öka/minska operatorer:

++, --

Sträng sammanfogning:

'.' Operatören

jämförelseoperatorer:

==, !=, >, < , >=

Logiska operatorer:

&&, ||, !


20) Om du vill tömma en array, hur skulle du då göra det?

Vi kan tömma en array genom att ställa in dess längd till valfritt –ve-tal, vanligtvis -1 och genom att tilldela nolllista

use strict;

use warnings;

my @checkarray;

if (@checkarray)

{

print "Array is not empty";

}

else

{

print "Array is empty";

}

21) Var kommandoradsargumenten lagras och om du vill läsa kommandoradsargument med Perl, hur skulle du göra det?

Kommandoradsargumenten i Perl lagras i en array @ARGV.

$ARGV[0] (det första argumentet)

$ARGV[1] (det andra argumentet) och så vidare.

$#ARGV är sänkningen av det sista elementet i @ARGV-matrisen, så antalet argument på kommandoraden är $#ARGV + 1


22) Anta att en array innehåller @arraycontent=('ab', 'cd', 'ef', 'gh'). Hur skriver man ut allt innehåll i den givna arrayen?

@arraycontent=('ab', 'cd', 'ef', 'gh')

foreach (@arraycontent)

{

print "$_\n";

}

23) Vad är användningen av -w, -t och strikt i Perl?

När vi använder –w ger det varningar om möjliga tolkningsfel i skriptet.

Strict säger åt Perl att tvinga fram kontroller av definitionen och användningen av variabler. Detta kan anropas med kommandot use strict. Om det finns några osäkra eller tvetydiga kommandon i skriptet, stoppar denna pragman exekveringen av skriptet istället för att bara ge varningar.

När den används –t slår den på fläckkontroll. Det tvingar Perl att kontrollera ursprunget för variabler där externa variabler inte kan användas i subskalexekvering och systemanrop


24) Skriv ett program för att ladda ner innehållet från webbplatsen www.perlinterview.com/answers.php i Perl.

#!/usr/bin/perl

use strict;

use warnings;

use LWP::Simple;

my $siteurl = 'www.perlinterview.com/answers.php';

my $savefile = 'content.kml';

getstore($siteurl, $savefile);

25) Vilken har högst företräde, lista eller villkor? Förklara?

Termer har högsta företräde i Perl. Termer inkluderar variabler, citattecken, uttryck inom parentes etc. Listoperatorer har samma prioritetsnivå som termer. Specifikt har dessa operatorer mycket stark vänsterordsföreträde.


26) Lista de datatyper som Perl kan hantera?

Skalärer ($): Den lagrar ett enda värde.

Arrayer (@): Den lagrar en lista med skalära värden.

Hashes (%): Den lagrar associativa arrayer som använder ett nyckelvärde som index istället för numeriska index


27) Skriv syntax för att använda grep-funktionen?

grep BLOCK LIST

grep (EXPR, LIST)

28) Vad är användningen av alternativen -n och -p?

Alternativen -n och -p används för att radbryta skript inuti Loops. Alternativet -n gör att Perl exekverar skriptet i slingan. Alternativet -p använde också samma loop som -n loop men utöver det använder det continue. Om både -n och -p alternativen används tillsammans, ges -p alternativet företräde.


29) Vad är användningen av alternativen -i och 0s?

Alternativet -i används för att modifiera filerna på plats. Detta innebär att Perl kommer att byta namn på indatafilen automatiskt och utdatafilen öppnas med det ursprungliga namnet. Om alternativet -i används enbart kommer ingen säkerhetskopia av filen att skapas. Istället orsakar -i.bak alternativet att skapa en säkerhetskopia av filen.


30) Skriv ett program som förklarar den symboliska tabellen tydligt.

I Perl är symboltabellen en hash som innehåller listan över alla namn definierade i ett namnområde och den innehåller alla funktioner och variabler. Till exempel:

sub Symbols

{

my($hashRef) = shift;

my(%sym);

my(@sym);

%sym = %{$hashRef};

@sym = sort(keys(%sym));

foreach (@sym)

{

printf("%-10.10s| %s\n", $_, $sym{$_});

}

}

Symbols(\%Foo::);

package Foo;

$bar = 2;

sub baz {

$bar++;

}

31) Hur kan du använda Perl-varningar och vad är viktigt att använda dem?

Perl-varningarna är de där Perl kontrollerar kvaliteten på koden som du har producerat. Obligatoriska varningar belyser problem i den lexikaliska analysfasen. Valfria varningar framhäver fall av möjliga anomalier.

use warnings; # it is same as importing "all"

no warnings; # it is same as unimporting "all"

use warnings::register;

if (warnings::enabled()) {

warnings::warn("any warning");

}

if (warnings::enabled("void")) {

warnings::warn("void", "any warning");

}

32) Vilket påstående har ett initialiserings-, tillståndskontroll- och inkrementuttryck i kroppen? Skriv en syntax för att använda det påståendet.

for ($count = 10; $count >= 1; $count--)

{

print "$count ";

}

33) Hur kan du ersätta tecknen från en sträng och spara antalet ersättningar?

#!usr/bin/perl

use strict;

use warnings;

my $string="APerlAReplAFunction";

my $counter = ($string =~ tr/A//);

print "There are $counter As in the given string\n";

print $string;

34) Ta bort dubblettdata från @array=(“perl”,,”php”,,”perl”,,”asp”)

sub uniqueentr

{

return keys %{{ map { $_ => 1 } @_ }};

}

@array = ("perl","php","perl","asp");

print join(" ", @array), "\n";

print join(" ", uniqueentr(@array)), "\n";

35) Hur kan information läggas in i hash?

När ett hashvärde refereras skapas det inte. Den skapas först när ett värde tilldelas den. Innehållet i en hash har ingen bokstavlig representation. Om hashen ska fyllas på en gång måste hashen avvecklas. Avvecklingen av hash innebär att nyckelvärdesparen i hash kan skapas med hjälp av en lista, de kan också konverteras från den. I denna konverteringsprocess placeras objekten med jämna nummer till höger och kallas värden. Objekten som placeras till vänster är udda numrerade och lagras som nycklar. Hashen har ingen definierad intern ordning och därför bör användaren inte förlita sig på någon speciell ordning.

Exempel på att skapa hash:

%birthdate = ( Ram => "01-01-1985",

Vinod => "22-12-1983",

Sahil => "13-03-1989",

Sony => "11-09-1991");

36) Varför anses Perl-alias vara snabbare än referenser?

I Perl anses alias vara snabbare än referenser eftersom de inte kräver någon avledning.


37) Hur kan minnet hanteras i Perl?

Närhelst en variabel används i Perl, upptar den en del minnesutrymme. Eftersom datorn har begränsat minne måste användaren vara försiktig med minnet som används av programmet. Till exempel:

use strict;

open(IN,"in");

my @lines = <IN>

close(IN);

open(OUT,">out");

foreach (@lines)

{

print OUT m/([^\s]+)/,"\n";

}

close(OUT);

Vid körning av ovanstående program, efter att ha läst en fil, kommer det att skriva ut det första ordet på varje rad till en annan fil. Om filerna är för stora skulle systemet få slut på minne. För att undvika detta kan filen delas upp i sektioner.


38) Hur kan du skapa anonyma subrutiner?

sub BLOCK

sub PROTO BLOCK

sub ATTRS BLOCK

sub PROTO ATTRS BLOCK

39) Vad menar du med kontext av en subrutin?

Det definieras som den typ av returvärde som förväntas. Du kan använda en enda funktion som returnerar olika värden.


40) Lista prefixet dereferencer i Perl.

$-Skalära variabler

%-Hash-variabler

@-matriser

&-subrutiner

Skriv globs-*myvar står för @myvar, %myvar.


41) Namnge en instans du använder i CPAN-modulen.

I CPAN är CGI och DBI mycket vanliga paket


42) Vilka är fördelarna med c framför Perl?

Det finns fler utvecklingsverktyg för C än för PERL. PERL körs långsammare än C-program. Perl verkar vara ett tolkat språk men koden följs i farten. Om du inte vill att andra ska använda din Perl-kod måste du dölja din kod på något sätt till skillnad från i C. Utan ytterligare verktyg är det omöjligt att skapa en körbar fil för ett Perl-program.


43) "Perl reguljära uttryck matchar den längsta möjliga strängen". Vad heter den här matchen?

Det kallas "greedy match" eftersom Perl reguljära uttryck normalt matchar den längsta möjliga strängen.


45) Hur kan du anropa en subrutin och identifiera en subrutin?

'&myvariable' används för att anropa en sub-rutin och '&' används för att identifiera en sub-rutin.


46) Vad är användningen av symbolen '->'?

I Perl är '->'-symbolen en infixdereferensoperator. om den högra sidan är en array-subscript, hash-nyckel eller en subrutin, måste den vänstra sidan vara en referens.

@array = qw/ abcde/; # array

print "n",$array->[0]; # it is wrong

print "n",$array[0]; #it is correct , @array is an array

47) Var kräver vi "chomp" och vad betyder det?

Vi kan eliminera det nya radens tecken genom att använda 'chomp'. Det kan användas i många olika scenarier. Till exempel:

excuteScript.pl FstArgu.

$argu = $ARGV[0];

chomp $argu; --> to get rid of the carrige return.

48) Vad betyder '$_'-symbolen?

'$_' är en standardvariabel i Perl och $_ är känd som "default input and pattern matching space


49) Vilket gränssnitt används i PERL för att ansluta till databasen? Hur ansluter man till databasen i Perl?

Vi kan ansluta till databasen med DBI-modulen i Perl.

use DBI;

my $dbh = DBI->connect('dbi:Oracle:orcl', 'username', 'password',)

50) Lista operatören som används i Perl?

Operators som används i Perl är

  • Strängsammansättning '.'
  • Jämförelse Operators ==, !=, >,< , >=
  • logisk Operators &&, ll , !
  • Uppdrag Operators + = ,- + , *=
  • Öka och minska Operators ++ ,-
  • Aritmetik Operators +, – ,*

51) Förklara vilken funktion i PERL som ger kodåteranvändbarhet?

För att ge kod återanvändbarhet i PERL används arvsfunktionen. I Arv kan den underordnade klassen använda metoderna och egenskapen för den överordnade klassen.


52) Nämn skillnaden mellan die och exit i Perl?

Die kommer att skriva ut ett meddelande till std-felet innan programmet avslutas medan Exit helt enkelt avslutar programmet.


53) Vad används grep-funktionen till i Perl?

För att filtrera listan och returnera endast de element som matchar vissa kriterier används Perl grep-funktionen.


54) Vilken syntax används i Perl grep-funktionen?

Syntaxen som används i Perl är

  • grep BLOCKLISTA
  • grep ( EXPR, LIST )
  • BLOCKERA: Den innehåller ett eller flera påståenden avgränsade med klammerparenteser, det sista påståendet avgör i blocket om blocket kommer att utvärderas sant eller falskt.
  • EXPR: Det representerar alla uttryck som stöder $, särskilt ett reguljärt uttryck. Mot varje element i listan tillämpas uttryck, och om resultatet av utvärderingen är sant, kommer det aktuella elementet att bifogas till den returnerade listan
  • LISTA: Det är en lista med element eller en array

55) Förklara vad är skalärdata och skalära variabler i Perl?

Skalär i Perl betyder en enda enhet som ett nummer eller en sträng. Så, den Java begreppet int, float, dubbel och sträng är lika med perls skalär och siffrorna och strängarna är utbytbara. Medan skalär variabel används för att lagra skalär data. Den använder $-tecken och följs av ett eller flera alfanumeriska tecken eller understreck. Det är skiftlägeskänsligt.


56) Vad betyder -> symbolen i Perl?

I Perl används symbolen pil – > för att skapa eller komma åt ett visst objekt i en klass.


57) Nämn hur många sätt du kan uttrycka sträng i Perl?

Du kan uttrycka sträng i Perl på många sätt

Till exempel "det här är guru99."

  • qq/detta är guru99 som sträng med dubbla citattecken/
  • qq^det här är guru99 som sträng med dubbla citattecken^
  • q/det här är guru99/
  • q&det här är guru99&
  • q(detta är guru99)

58) Förklara ANVÄNDNING och KRAV uttalanden?

  • REQUIRE-sats: Den används för att importera funktioner med ett globalt omfång så att deras objekt och funktioner kan nås direkt

Exempel: Kräv modul,

Var=modul::method(); //metod anropad med modulreferensen

  • USE-satser tolkas och exekveras under parsning, medan require-satserna exekveras under körning.

Exempel: Använd modul

Var=metod(); //metoden kan anropas direkt


59) Förklara vad Chop & Chomp-funktionen gör?

  • Hacka funktion eliminerar det sista tecknet från expr, varje element i listan
  • Chomp funktion eliminerar det sista tecknet från en expr eller varje element i listan om det matchar värdet på $/. Det anses vara bättre än chop eftersom det bara tar bort karaktären om det finns en matchning.

60) Nämn vad är CPAN?

CPAN betyder Comprehensive Perl Archive Network, en stor samling av Perl-programvara och dokumentation.


61) Förklara vad är polymorfism i Perl?

I Perl betyder polymorfism att metoderna som definieras i basklassen alltid kommer att åsidosätta metoderna som definieras i den överordnade klassen.


62) Nämn vilka två sätt att få privata värden i en subrutin eller block?

Det finns två sätt genom vilka privata värden kan erhållas i en subrutin eller ett block

  • Lokala Operator: På globala variabler kan endast denna operatör arbeta. Värdet på den privata variabeln sparas på Lokala Operator och vidtar åtgärder för att återställa dem i slutet av blocket
  • My Operator: För att definiera eller skapa en ny variabel kan denna operator användas. Variabel som skapas av My Operator kommer alltid att förklaras privat till blocket där det är definierat.

63) Förklara vad är STDIN, STDOUT och STDERR?

  • STDIN: STDIN-filhandtaget används för att läsa från tangentbordet
  • STDOUT: Den används för att skriva in i skärmen eller ett annat program
  • STDERR: Det används också för att skriva in i en skärm. STDERR är en standardfelström som används i Perl.

64) Vad är stängningen i PERL?

Stängningen är ett kodblock som används för att fånga miljön där den är definierad. Det fångar särskilt alla lexikaliska variabler som blocket består av och använder i ett yttre rymden.


65) Förklara vad är Perl one liner?

One liner är ett kommandoradsprogram och kan köras från kommandoraden omedelbart.

Till exempel,

# run program under the debugger

perl-d my_file

66) Förklara vad som är lvärde?

Ett lvärde är ett skalärt värde som kan användas för att lagra resultatet av vilket uttryck som helst. Vanligtvis visas det på vänster sida av uttrycket och representerar ett datautrymme i minnet.


67) Förklara vilken funktion som används för att identifiera hur många tecken som finns i en sträng?

För att tala om hur många tecken som finns i en sträng, längd () funktionen används.


68) Förklara vad är prefix dereferencer och lista dem?

Om du använder ett visst prefix när du refererar bort en variabel, kallas de prefix dereferencer.

  • $- Skalära variabler
  • %-Hash-variabler
  • @-Arrayer
  • &-Subrutiner
  • Skriv globs-*myvar står för @myvar, %myvar

69) Förklara vad är funktionen av Return Value?

Funktionen Return Value returnerar en referens till ett objekt som välsignats med CLASSNAME.

Perl-certifieringsquiz

Dessa Perl MCQ-frågor hjälper dig med självbedömning och förberedelser inför Perl-certifieringsprovet. Gör detta gratis Perl Quiz online som innehåller MCQs för att testa dina kunskaper om Perl.

Dessa intervjufrågor kommer också att hjälpa dig i din viva(orals).