Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python ipysheet关于更新单元格属性的问题_Python_Ipywidgets - Fatal编程技术网

Python ipysheet关于更新单元格属性的问题

Python ipysheet关于更新单元格属性的问题,python,ipywidgets,Python,Ipywidgets,我的代码在这里 import ipysheet mysheet = ipysheet.sheet(rows=2, columns=2) mysheet c = cell(0,0,1, background_color = 'red') 我想改变背景颜色,我希望这样做 c.background_color = 'yellow' 或者以后 mysheet[0, 0].background_color = 'yellow' 而不是构造一个新对象 c = cell(c.row_start, c.c

我的代码在这里

import ipysheet
mysheet = ipysheet.sheet(rows=2, columns=2)
mysheet
c = cell(0,0,1, background_color = 'red')
我想改变背景颜色,我希望这样做

c.background_color = 'yellow'
或者以后

mysheet[0, 0].background_color = 'yellow'
而不是构造一个新对象

c = cell(c.row_start, c.column_start, c.value, background_color = 'yellow')
请原谅,如果我为我做了一个阅读文档的问题。但我没有找到我期望的方法。如果没有,有人能解释一下吗?谢谢

在查看了of
cell
方法之后,您可以找到该
cell
方法返回
ipysheet.sheet.cell
类的实例。背景色设置为此类的
style
参数的属性。如果此属性满足以下条件,则可以通过将指定的颜色指定给值来动态更改此属性:

>>> import ipysheet
>>> from ipysheet.easy import cell
>>> mysheet = ipysheet.sheet(rows=2, columns=2)
>>> c = cell(0,0,1, background_color = 'red')
>>> type(c)
ipysheet.sheet.Cell
>>> print(c.style['backgroundColor'])
red
>>> c.style['backgroundColor'] = 'blue'
>>> print(c.style['backgroundColor'])
blue
更新:

似乎,将属性设置为另一个值不会改变工作表的背景颜色,因为工作表的小部件无法动态获取状态。您可以使用单元格实例的
send\u state()
方法更新状态:

c.style['backgroundColor'] = 'blue'
c.send_state()

# or by position in mysheet
mysheet[0, 0].style['backgroundColor'] = 'blue'
mysheet[0, 0].send_state()
在工作表的该单元格更改背景色之后。

查看of
cell
方法后,您可以找到该
cell
方法返回
ipysheet.sheet.cell
类的实例。背景色设置为此类的
style
参数的属性。如果此属性满足以下条件,则可以通过将指定的颜色指定给值来动态更改此属性:

>>> import ipysheet
>>> from ipysheet.easy import cell
>>> mysheet = ipysheet.sheet(rows=2, columns=2)
>>> c = cell(0,0,1, background_color = 'red')
>>> type(c)
ipysheet.sheet.Cell
>>> print(c.style['backgroundColor'])
red
>>> c.style['backgroundColor'] = 'blue'
>>> print(c.style['backgroundColor'])
blue
更新:

似乎,将属性设置为另一个值不会改变工作表的背景颜色,因为工作表的小部件无法动态获取状态。您可以使用单元格实例的
send\u state()
方法更新状态:

c.style['backgroundColor'] = 'blue'
c.send_state()

# or by position in mysheet
mysheet[0, 0].style['backgroundColor'] = 'blue'
mysheet[0, 0].send_state()

工作表单元格更改背景色后。

谢谢您的回复。我完全重新生成你的代码,我完全同意。但是如果你只是键入
mysheet
。您会注意到图纸的颜色并没有改变,甚至属性的值也发生了变化。只有使用相同的位置重新构建单元格并更新颜色,工作表的颜色才会发生变化。(据我所知)。您好,@KeZhang!经过一些研究,我找到了这个问题的可能解决方案,并在“更新”部分进行了描述。那确实有效。我还发现c.style={'backgroundColor':'yellow'}将代替c.style['backgroundColor']='yellow'工作。我觉得他们应该是一样的,对吧?@KeZhang,你好!是的,它们都是一样的style属性是键值对的集合。其中之一是“背景色”。在c.style={'backgroundColor':'yellow'}的情况下,您只使用一个键('backgroundColor')将属性重新分配给dict,其他属性将被删除(如果存在其他属性)。但为“backgroundColor”键赋值是一个更相关的选项,因为它不会影响style属性中的其他属性。感谢您的回复。我完全重新生成你的代码,我完全同意。但是如果你只是键入
mysheet
。您会注意到图纸的颜色并没有改变,甚至属性的值也发生了变化。只有使用相同的位置重新构建单元格并更新颜色,工作表的颜色才会发生变化。(据我所知)。您好,@KeZhang!经过一些研究,我找到了这个问题的可能解决方案,并在“更新”部分进行了描述。那确实有效。我还发现c.style={'backgroundColor':'yellow'}将代替c.style['backgroundColor']='yellow'工作。我觉得他们应该是一样的,对吧?@KeZhang,你好!是的,它们都是一样的style属性是键值对的集合。其中之一是“背景色”。在c.style={'backgroundColor':'yellow'}的情况下,您只使用一个键('backgroundColor')将属性重新分配给dict,其他属性将被删除(如果存在其他属性)。但将值指定给“backgroundColor”键是一个更相关的选项,因为它不会影响样式属性中的其他属性。