code: def numberofsamples(self):
          
          # Initialise variables to store line data
          idline = 0
          linenumber = 0
          # Parse the sample sheet to find the number of samples
          with open(self.samplesheet, "rb") as ssheet:
              # Use enumerate to iterate through the lines in the sample sheet to retrieve the line number and the data
              for linenumber, entry in enumerate(ssheet):
                  # Once Sample_ID is encountered
                  if "Sample_ID" in entry:
                      # Set the id line as the current line number
                      idline = linenumber
          # :samplecount is the last line number in the file minus the line number of Sample_ID
          self.samplecount = linenumber - idline
          printtime('There are {} samples in this run. '
                    'Running off-hours module with the following parameters:\n'
                    'MiSeqPath: {},\n'
                    'MiSeqFolder: {},\n'
                    'SampleSheet: {}'.format(self.samplecount, self.miseqpath, self.miseqfolder, self.samplesheet),
                    self.start)
          # Run the fastqmover module now that the number of sequences is known
          self.fastqlinker()
docs: Count the number of samples is the samplesheet