Streamlit如何正确打印函数返回值 输出为None该如何解决
问题解决方法
问题根因
- 你写的
hello函数当前返回的是二元组而非拼接后的完整字符串,就算不出现None问题,也不会输出你想要的「Hello Maya」格式 - 输出为None的核心原因是
hello函数实际没有返回有效内容:如果你实际代码里是在函数内直接调用st.text、print这类方法,这类方法本身返回值为None,赋值给first_variable后输出自然为None
修复代码
import streamlit as st def hello(name): # 使用f-string拼接得到完整字符串后返回 return f'Hello {name}' first_variable = hello('Maya') st.text(first_variable)
关键修改点
- 把函数返回元组的逻辑改为返回拼接完成的字符串,除了f-string也可以用
'Hello ' + name实现拼接 - 确保函数只通过
return返回计算结果,不要在函数内直接调用Streamlit输出方法再把返回值赋值给变量
内容的提问来源于stack exchange,提问作者kingmadeofbits
相关产品推荐
相关产品推荐

