首页 > 解决方案 > 为什么代码在第一个 f 字符串之后停止?

问题描述

我正在尝试根据提供的字典打印出两个语句,但是出现问题并且代码在第一个 f 字符串之后停止(第二个不显示)。我想它可能是类似的东西,但无法找出错误:

data = [
{
    'name': 'Instagram',
    'follower_count': 346,
    'description': 'Social media platform',
    'country': 'United States'
},
{
    'name': 'Cristiano Ronaldo',
    'follower_count': 215,
    'description': 'Footballer',
    'country': 'Portugal'
}]

a = input(f"Compare A: {data[1]['name']}, {data[1]['description']}, from {data[1]['country']}")
b = input(f"Compare B: {data[0]['name']}, {data[0]['description']}, from {data[0]['country']}")

标签: pythonf-string

解决方案


这个怎么样?

data = [
{
    'name': 'Instagram',
    'follower_count': 346,
    'description': 'Social media platform',
    'country': 'United States'
},
{
    'name': 'Cristiano Ronaldo',
    'follower_count': 215,
    'description': 'Footballer',
    'country': 'Portugal'
}]

a = print(f"Compare A: {data[1]['name']}, {data[1]['description']}, from {data[1]['country']}")
b = print(f"Compare B: {data[0]['name']}, {data[0]['description']}, from {data[0]['country']}")

结果如下:

Compare A: Cristiano Ronaldo, Footballer, from Portugal
Compare B: Instagram, Social media platform, from United States

推荐阅读