# Copyright (C) 2023 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License.
# Formatting utilities
class Sentinel(): pass
SEPARATOR = Sentinel()
def FormatTable(data, prefix="", alignments=[]): """Pretty print a table.
Prefixes each row with `prefix`. """ ifnot data: return""
widths = [max([len(x) if x else0for x in col]) for col in zip(*[d for d in data ifnot isinstance(d, Sentinel)])]
result = ""
colsep = " " for row in data:
result += prefix if row == SEPARATOR: for w in widths:
result += "-" * w
result += colsep
result += "\n" else: for i in range(len(row)):
cell = row[i] if row[i] else"" if i >= len(alignments) or alignments[i] == "R":
result += " " * (widths[i] - len(cell))
result += cell if i < len(alignments) and alignments[i] == "L":
result += " " * (widths[i] - len(cell))
result += colsep
result += "\n" return result
Messung V0.5 in Prozent
¤ Diese beiden folgenden Angebotsgruppen bietet das Unternehmen0.11Angebot
(Wie Sie bei der Firma Beratungs- und Dienstleistungen beauftragen können 2026-06-28)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.