For 2023 - we are now fully retired from IT training. We have made many, many friends over 25 years of teaching about Python, Tcl, Perl, PHP, Lua, Java, C and C++ - and MySQL, Linux and Solaris/SunOS too. Our training notes are now very much out of date, but due to upward compatability most of our examples remain operational and even relevant ad you are welcome to make us if them "as seen" and at your own risk.
Lisa and I (Graham) now live in what was our training centre in Melksham - happy to meet with former delegates here - but do check ahead before coming round. We are far from inactive - rather, enjoying the times that we are retired but still healthy enough in mind and body to be active!
I am also active in many other area and still look after a lot of web sites - you can find an index ((here)) |
Lua - Table elements v table as a whole
Lua ... If you refer to a table name WITHOUT square brackets, you are referring to (and will effect) the whole table ... but if you refer to a table name and put something thereafter in square brackets, you are referring to just one element of the table. Actually, an almost identical story applies to other languages!
-- Whole table - no square brackets
people = {"Graham","Sadhana","Damien",'Ricardo',"Vanessa",'Thom'}
-- Just individual elements - with square brackets
 
people[7] = "Mandy"
people["Builder"] = "Bob"
Also in Lua ... if you use a for loop up to #people, or the ipairs function, you'll only loop through the consecutive elements of a table that are numbered from 1. If you use pairs instead, you'll select ALL the elements (and you can also do that with the next iterator.
print ("** This will list out until a missing index")
for k=1,#people do
print (people[k])
end
print ("** print out all pairs")
for ping,pong in pairs(people) do
print (pong,ping)
end
print ("** print out indexed pairs")
print ("** so it misses out named ones!")
print ("** Only gives the ones with index no.s!")
for ping,pong in ipairs(people) do
print (pong,ping)
end
Here are the outputs from those two pieces of simple Lua code using tables run straight after each other:
** This will list out until a missing index
Graham
Sadhana
Damien
Ricardo
Vanessa
Thom
Mandy
** print out all pairs
Graham 1
Sadhana 2
Damien 3
Ricardo 4
Vanessa 5
Thom 6
Mandy 7
Bob Builder
** print out indexed pairs
** so it misses out named ones!
** Only gives the ones with index no.s!
Graham 1
Sadhana 2
Damien 3
Ricardo 4
Vanessa 5
Thom 6
Mandy 7
[trainee@easterton al]$
See here for more Lua resources - the page is a description of our course and if you click on the individual module details you'll be taken to resources specific to that particular modules - lots more examples, short articles such as this indexed by topic, etc (written 2008-08-07)
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articles U105 - Lua - Tables and the table library. [1697] Sorting in lua - specifying your own sort routine - (2008-07-05) [2346] The indexed and hashed parts of a Lua table - (2009-08-10) [2499] ourdog is Greyhound, Staffie and Ginger Cake - (2009-11-09) [2699] Lua tables - they are everything - (2010-03-30) [2703] Lua Metatables - (2010-04-02) [3694] Special __ methods you can use in Lua metatables - (2012-04-12) [3725] Lua Tables - (2012-05-10) [4248] Metatables, Metamethods, classes and objects in Lua - (2014-03-18) [4273] Dot or Colon separator between table name and member in Lua - what is the difference? - (2014-05-06) [4571] Lua - using modules to add your own utilities - (2015-11-04)
Some other Articles
London for the visitor, for freeMoodle, Drupal, Django (and Rails)Lua examples, Lua CoursesFirst class functions in Lua lead to powerful OO facilitiesLua - Table elements v table as a wholeAge ConcernVertical LondonBath, Snake or Nag?Clean code, jump free (Example in Lua)Rules, suggestions, considerations for Lua variable names
|
4759 posts, page by page
Link to page ... 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96 at 50 posts per page
This is a page archived from The Horse's Mouth at
http://www.wellho.net/horse/ -
the diary and writings of Graham Ellis.
Every attempt was made to provide current information at the time the
page was written, but things do move forward in our business - new software
releases, price changes, new techniques. Please check back via
our main site for current courses,
prices, versions, etc - any mention of a price in "The Horse's Mouth"
cannot be taken as an offer to supply at that price.
Link to Ezine home page (for reading).
Link to Blogging home page (to add comments).
|
|