我可以更改变量的值"a" if 流派 == '1: generate' 并影响另一个流派 == '2: 调整' 中的变量"a"吗?



我可以更改变量"的值吗;a";如果类型=="1:生成"并影响变量"1";a";在另一个if type=='2:adjust'?

if genre == '1: generate':
st.subheader('generate')
_, palette_hex = t2p_demo.generate(
np.array(image), input_words, category)
palette_img = []
for item in palette_hex:
palette_img.append(Image.new('RGB', (100, 100), color=item))
st.image(palette_img)
st.subheader('generate: ')

a=[]
for item in palette_hex:
a.append(item)
st.write(' '.join(a))


if genre == '2: adjust':
st.subheader('adjust')
st.write(' '.join(a))

st.write('adjust:')
words = st.text_input('adjust:', value=(' '.join(a)),
max_chars=None, key=None, type='default')
st.write('adjust: ', words)

我不完全理解您要做什么,但是,为了使一次执行(当流派=='1…'时(的更改在另一次执行中(当流派='2'时(永久不变,您可以按如下方式使用session_state

if genre == '1: generate':
st.session_state.a=[]
for item in palette_hex:
st.session_state.a.append(item)
st.write(' '.join(st.session_state.a))

if genre == '2: adjust':
st.subheader('adjust')
st.write(' '.join(st.session_state.a))

这种用法可能会迫使您在session_state中定义"a",这可以在脚本开始时完成,如下所示:

if 'a' not in st.session_state:
st.session_state.a = [] # or any other default value

最新更新