logo

StringIO-modul i Python

Det är StringIO modulen är ett filliknande objekt i minnet. Den kan användas för att mata in eller mata ut de flesta funktioner som användare kan förvänta sig av ett vanligt filobjekt. När användaren väl har skapat StringIO-objekten skapas de initialt genom att tillhandahålla en sträng till konstruktorn. Om det inte finns någon sträng kommer StringIO att vara tom. I båda fallen kommer den initialt visade markören på filen att börja på noll.

Modulen är inte tillgänglig i den senaste versionen av Python; För att kunna använda denna modul måste vi alltså överföra den till Io-modulen i Python i form av io.StringIO.

Exempel:

 # First, we will import the required module. from io import StringIO as SIO # The arbitrary string. string_1 = 'This is the initialized string.' # Here, we will use the StringIO method for setting as the file object. # Now, we have an object-file that we can treat as a file. file_1 = SIO(string_1) # Now, we will be reading the file by using read() print (file_1.read()) # Here, We can also write in this file. file_1.write(' Welcome to Javatpoint.com.') # by using the following command, we can make the cursor at index 0. file_1.seek(0) # by using the following command, the user is able to print the file after writing #in the initialized string (string_1). print ('The file of the string after writing in it is:', file_1.read()) 

Produktion:

 This is the initialized string. The file of the string after writing in it is: This is the initialized string. Welcome to Javatpoint.com. 

Viktiga metoder för StringIO:

Följande är några metoder för StringIO:

1. StringIO.getvalue(): Denna funktion används för att returnera hela innehållet i filen.

Syntax:

Syntaxen för metoden ovan är:

 File_name.getvalue() 

Exempel:

 # First, we will import the StringIO module. from io import StringIO as SIO # The arbitrary string. string_1 = 'Hello and thank you for visiting to Javatpoint.com.' # Here, we will use the StringIO method for setting as the file object. file_1 = SIO(string_1) # Retrieving the complete contents of the above file. print(file_1.getvalue()) 

Produktion:

 Hello and thank you for visiting to Javatpoint.com 

2. I detta tittar vi på några av funktionerna i StringIO som returnerar ett booleskt värde, dvs. antingen falskt eller sant:

vad är en hashset i java
    isatty():Denna funktion för StringIO används för att returnera False om strömmen inte är interaktiv och True om strömmen är interaktiv.läsbar():Denna funktion i StringIO används för att returnera False om filen inte är läsbar och True om filen är läsbar.skrivbar():Denna funktion av StringIO används för att returnera False om filen inte stöder skrivning och True om filen stöder skrivning.sökbar():Denna funktion av StringIO används för att returnera False om filen inte stöder slumpmässig åtkomst och True om filen stöder slumpmässig åtkomst.stängd:Denna funktion av StringIO används för att returnera False om filen är öppen och den returnerar True om filen stängs.

Syntax:

Syntaxer för ovanstående metod är:

 1. File_name.isatty() 2. File_name.readable() 3. File_name.writable() 4. File_name.seekable() 5. File_name.closed 

Exempel:

 # First, we will import the StringIO module. from io import StringIO as SIO # The arbitrary string. string_1 = 'Hello and thank you for visiting to Javatpoint.com.' # Here, we will use the StringIO method for setting # as the file object. file_1 = SIO(string_1) # by using the following command, the user will be able to return is the file #interactive or not. print ('Is the file stream above interactive?', file_1.isatty()) # by using the following command, # the user will be able to return is the file readable or not. print ('Is the file stream above readable?', file_1.readable()) # by using the following command, # the user will be able to return does the file support writing or not. print ('Is the file stream above writable?', file_1.writable()) # by using the following command, , the user will be able to return is the file #seekable or not. print ('Is the file stream above seekable?', file_1.seekable()) # by using the following command, the user will be able to return is the file #closed or not. print ('Is the file above closed?', file_1.closed) 

Produktion:

 Is the file stream above interactive? False Is the file stream above readable? True Is the file stream above writable True Is the file stream above seekable? True Is the file above closed? False 

3. StringIO.seek(): De söka() funktionen används för att ställa in markörens position i filen. Om vi ​​utför någon skriv- eller läsoperation på ett dokument, placeras markören på det index som användes senast så att vi kan flytta markören från början av filen seek() används.

Syntax:

Syntaxen för metoden ovan är:

 File_name.seek(argument) #This argument tells the function where to place the cursor. 

Exempel:

 # First, we will import the StringIO module. from io import StringIO as SIO # The arbitrary string. string_1 ='Hello and thank you for visiting to Javatpoint.com.' # Here, we will use the StringIO method for setting as the file object. file_1 = SIO(string_1) # here, the user will be able to Read the file: print (file_1.read()) #If the user wishes to view the file again, it will display empty file since the #cursor has been set to the last index. It will also not print anything because #the function returns an empty string. print (file_1.read()) # So, to set the cursor position for reading or writing the file again # we can use seek() function. #We can pass any index here form(0 to len(file)) file_1.seek(0) # Now the user can read the file again print (file_1.read())S 

Produktion:

 Hello and thank you for visiting to Javatpoint.com. Hello and thank you for visiting to Javatpoint.com. 

4. StringIO.truncate(): Denna funktion används för att ändra storlek på filströmmen. Denna metod sparar filen och släpper den efter det givna indexet.

Syntax:

Syntaxer för ovanstående metod är:

 File_name.truncate(size = None) # The user can provide the size from where to truncate the file. 

Exempel:

 # First, we will import the StringIO module. from io import StringIO as SIO # The arbitrary string. string_1 ='Hello and welcome to Javatpoint.com.' # Here, we will use the StringIO method for setting as the file object. file_1 = SIO(string_1) # here, we can read the initial file: print(file_1.read()) # for setting the cursor at 0. file_1.seek(0) # for dropping the file after the given index, i.e., 14. file_1.truncate(14) # here, it will print the File after truncate. print(file_1.read()) 

Produktion:

 Hello and welcome to Javatpoint.com. Hello and welc 

5. StringIO.tell(): Denna metod används för att berätta filens aktuella ström och markörposition.

Syntax:

Syntaxer för ovanstående metod är:

 File_name.tell() 

Exempel:

 # First, we will import the StringIO module. from io import StringIO as SIO # The arbitrary string. string_1 ='Hello and welcome to Javatpoint.com.' # Here, we will use the StringIO method for setting as the file object. file_1 = SIO(string_1) # Here the cursor is set at index '0'. print(file_1.tell()) # now, we are setting the Cursor to index '23'. file_1.seek(23) # here, we will be printing the index of cursor print(file_1.tell()) 

Produktion:

 0 23 

6. StringIO.close() Detta används för att stänga filen. Den här funktionen anropas på en fil och vi kan inte utföra några operationer på den. Varje operation som görs kommer att resultera i en ValueError .

Syntax: =

Syntaxer för ovanstående metod är:

 File_name.close( 

Exempel:

 # First, we will import the StringIO module. from io import StringIO as SIO # The arbitrary string. string_1 ='Hello and welcome to Javatpoint.com.' # Here, we will use the StringIO method for setting as the file object. file_1 = SIO(string_1) # here, we can read the initial file: print(file_1.read()) # for closing the current file. file_1.close() # If the user would perform any operation on the above file now, it will raise an #ValueError. # here, we will be using the closed function to know whether the file is closed #or not. print('Is the file closed?', file_1.closed) 

Produktion:

 Hello and welcome to Javatpoint.com. Is the file closed? True