如何在每行Python上打印出不同的标题

时间:2018-12-04 01:08:19

标签: python python-3.x

目前我有一些数据:

EXAMPLE_DATA = [
    ['time', 'age', 'height', 'width', 'ethnicity', 'religion'],
    ['18:42:11', '61', '153.9615', '0.8', 'Mixed', 'None'],
    ['18:35:00', '34', '116.4253333', '10.17', 'Mixed', 'None']]

我有一个名为“ example_func”的函数,该函数调用EXAMPLE_DATA [1],例如:数据的第二行

然后我使用了代码:

def display_data( example_func ):

    for row in example_func:
        print(row)

这将提供以下输出:

18:42:11
61
153.9615
0.8
Mixed
None

我希望以下输出是

Time: 18:42:11
Age: 61
Height: 153.9615
Ethnicity: Mixed

但是,我想在代码中设置标题,并且不想使用EXAMPLE_DATA中的标题。

您会注意到,我也不想在最终输出中显示“宽度”或“宗教”。

如果您需要更多信息,请告诉我。

4 个答案:

答案 0 :(得分:2)

不确定我能完全理解您的所有问题,但这是一个猜测:

$fincontent=str_replace("href=\"index.php?", "href=\"index.php?s=blog&", $precontent);
$content=str_replace("src=\"images/", "src=\"../../blog/images/", $fincontent);

您可以在Python 3.6+中使用f-strings来更简洁地编写它。

str_replace(array('href=\"index.php?', 'href=\"index.php?s=blog&'), array('src=\"images/', 'src=\"../../blog/images/'), $precontent);

答案 1 :(得分:2)

这是完成任务的功能:

def display_data(example_func):

    headings = ['Time', 'Age', 'Height', 'Ethnicity']  # Your headings
    rows = [0, 1, 2, 4]  # The corresponding rows

    for heading, row in zip(headings, rows):  # extracts each heading and the corresponding row
        print(heading + ': ' + example_func[row])

答案 2 :(得分:0)

使用熊猫来解决您的问题。熊猫会自动按照您要求的格式处理数据。您可以根据需要修改输出。

答案 3 :(得分:0)

注意:仅当您传递整个表格而不是一行时,以下内容才有效。对我来说,疏忽大意。这样会更加优雅。如果您真的只希望它只能在一行上运行,则示例代码位于末尾。

您可以制作字典,将想要的标题映射到它们在EXAMPLE_DATA中的索引:

 HEADINGS = {'Time':0, 'Age':1, 'Height':2, 'Ethnicity':4}

这样,您就可以遍历各个键并在相应的索引处显示该值。

def display_data( example_func, headings ):
    for row in example_func:
        for key in headings.keys():
            print(key + ": " + row[headings[key]]

但是,如果要获得绝对的效率,则可以计算一次headings.keys(),而只需多次使用。没关系。

def display_data( example_func, headings ):
    keys = headings.keys()
    for row in example_func():
        for key in keys:
            print(key + ": " + row[headings[key]]

单行示例代码:

def display_data( example_func, headings ):
    keys = headings.keys()
    for row in [example_func()]:
        for key in keys:
            print(key + ": " + row[headings[key]]