Ejemplo n.º 1
0
def hour_to_12_or_24(h):
	# convert hour number h to hour string e.g. ' 8 PM'
	if time_12_hours:
		hmod = h % 12
		if hmod == 0: hmod = 12
		hstr = pad(hmod,' ') + ' '
		if h < 12: hstr = hstr + 'AM'
		else: hstr = hstr + 'PM'
	else:
		hstr = pad(h,' ') 
	return hstr
Ejemplo n.º 2
0
def stem_leaf_schedule(timelist_0, headsign_0, timelist_1 = [], headsign_1 = '', stemleaffile = ''):
		
	# init some structures
	left_leaf = []
	right_leaf = []
	leftstrs = []
	rightstrs = []
	for i in range(24):
		left_leaf.append([])
		right_leaf.append([])
		leftstrs.append('')
		rightstrs.append('')
		
	# order is [direction 0, direction 1]
	tuples0 = stem_leaf_tuple(timelist_0,60)
	for (stm,lf) in tuples0:
		left_leaf[stm].append(lf)

	tuples1 = stem_leaf_tuple(timelist_1,60) 	
	for (stm,lf) in tuples1:
		right_leaf[stm].append(lf)

	# make list of strings for each hour
	# this should be easy to output to various formats including HTML
	leftlens = []
	rightlens = []
	for i in range(24):
		for l in left_leaf[i]:
			if left_reversed:
				leftstrs[i] = pad(l,'0') + ' ' + leftstrs[i]
			else:
				leftstrs[i] = leftstrs[i] + pad(l,'0') + ' '
				
		for l in right_leaf[i]:
			rightstrs[i] = rightstrs[i] + ' ' + pad(l,'0') 
		
		leftlens.append(len(leftstrs[i]))
		rightlens.append(len(rightstrs[i]))

	# move schedule up/down relative to day start
	schedule_hours = range(24)
	if day_start != 0:
		schedule_hours = schedule_hours[day_start:] + schedule_hours[:day_start]
	
	# trim start and end of new schedule
	if trim_schedule:
		i = 0
		while leftlens[schedule_hours[i]] == 0 and rightlens[schedule_hours[i]] == 0: 
			i = i + 1
		j = 24-1
		while leftlens[schedule_hours[j]] == 0 and rightlens[schedule_hours[j]] == 0: 
			j = j - 1
		schedule_to_write = schedule_hours[i:j+1]
	else:
		schedule_to_write = schedule_hours
	
	print 'Writing stem-leaf schedule file: ' + stemleaffile + '.txt'
	stem_leaf_write_to_file(leftstrs,rightstrs,schedule_to_write,headsign_0,headsign_1,leftlens,stemleaffile + '.txt')

	print 'Writing stem-leaf schedule file: ' + stemleaffile + '.html'
	stem_leaf_write_to_html(leftstrs,rightstrs,schedule_to_write,headsign_0,headsign_1,stemleaffile + '.html')