<< Chapter < Page | Chapter >> Page > |
The remaining parts of this program will be presented and discussed as code fragments in subsequent Listings. As mentioned above, a complete listingof the program is shown in Listing 4 .
A consolidated view of the output from the program is shown in Figure 4 .
The code in Listing 2 nests the two tuples, t1 and t2 , produced earlier, along with two strings, in a new tuple. The new tuple is assigned to thevariable named t3 .
Listing 2 . Nesting the tuples. |
---|
print("Create/print nested tuple")
t3 = "A",t1,"B",t2print(t3) |
All that is required to nest the existing tuples in a new tuple is to list the variables that reference the two existing tuples in a comma-separated list ofitems for creation of the new tuple. (Note that the optional parentheses were omitted in Listing 2 .)
Figure 2 shows the output for the new tuple containing two nested tuples.
Figure 2 . Output from the code in Listing 2. |
---|
Create/print nested tuple
('A', (1, 2), 'B', ('a', 'b')) |
Note that the two nested tuples retain their identity as tuples, as indicated by the fact that the parentheses surrounding the items in the two nested tuplesare preserved in the new tuple. This is also indicated by the visualization in Figure 5 .
The code in Listing 3 shows code that gets and displays the length of the new tuple that contains the two nested tuples.
Listing 3 . Get the length of the new tuple. |
---|
print("Length of nested tuple is:")
print(len(t3)) |
The length is a measure of the number of items in the tuple, and is obtained using the method named len .
Figure 3 shows the output produced by the code in Listing 3 , including the length of the new tuple containing the two nested tuples.
Figure 3 . Output from the code in Listing 3. |
---|
Length of nested tuple is:
4 |
It is important to note that even though the tuple shown in Figure 2 actually consists of six individual items (ignoring parentheses) , each of the nested tuples is treated as a single item, giving a length of only four items for thetuple that contains the two nested tuples.
This would be true regardless of the length of the nested tuples.
You will learn in a future module that a double square-bracket indexing notation can be used to gain access to the individual items in tuples that are nested inside of othertuples.
A complete listing of the program is shown in Listing 4 .
Listing 4 . Complete program listing. |
---|
# Illustrates creating and displaying nested tuples
#--------------------------------------------------print("Create/print one tuple")
t1 = 1,2print(t1)
print("Create/print another tuple")t2 = "a","b"
print(t2)print("Create/print nested tuple")
t3 = "A",t1,"B",t2print(t3)
print("Length of nested tuple is:")print(len(t3)) |
Figure 4 shows a consolidated view of the output produced by this program.
Figure 4 . Output from the code in Listing 4. |
---|
Create/print one tuple
(1, 2)Create/print another tuple
('a', 'b')Create/print nested tuple
('A', (1, 2), 'B', ('a', 'b'))Length of nested tuple is:
4 |
A visualization of the tuples from this program is shown in Figure 5 .
Figure 5. Visualization of the tuples.
I encourage you to copy the code from Listing 4 . Execute the code and confirm that you get the same results as those shown in Figure 4 . Experiment with the code, making changes, and observing the results of your changes. Make certain that youcan explain why your changes behave as they do.
This section contains a variety of miscellaneous information.
Financial : Although the Connexions site makes it possible for you to download a PDF file for thismodule at no charge, and also makes it possible for you to purchase a pre-printed version of the PDF file, you should beaware that some of the HTML elements in this module may not translate well into PDF.
I also want you to know that, I receive no financial compensation from the Connexions website even if you purchase the PDF version of the module.
In the past, unknown individuals have copied my modules from cnx.org, converted them to Kindle books, and placed them for sale on Amazon.com showing me as the author. Ineither receive compensation for those sales nor do I know who does receive compensation. If you purchase such a book, please beaware that it is a copy of a module that is freely available on cnx.org and that it was made and published withoutmy prior knowledge.
Affiliation : I am a professor of Computer Information Technology at Austin Community College in Austin, TX.
-end-
Notification Switch
Would you like to follow the 'Itse 1359 introduction to scripting languages: python' conversation and receive update notifications?