Python 3.x 如何在Python中增加默认变量长度

Python 3.x 如何在Python中增加默认变量长度,python-3.x,pandas,amazon-redshift,string-length,Python 3.x,Pandas,Amazon Redshift,String Length,有没有办法增加Python中的默认变量长度(我认为字符串的默认值是255?)?例如,在SAS中,有一个length语句将固定长度分配给某个变量。它的工作原理类似于-LENGTH变量list$字节数 我想这样做的原因是以下错误: DataError: value too long for type character varying(256) 我正在尝试将pandas数据帧写入红移,但由于上述错误,无法工作。现在我有将近400个变量/列,其中大多数是字符串类型(基本上是描述或注释),不可能检查每

有没有办法增加Python中的默认变量长度(我认为字符串的默认值是255?)?例如,在SAS中,有一个length语句将固定长度分配给某个变量。它的工作原理类似于-LENGTH变量list$字节数

我想这样做的原因是以下错误:

DataError: value too long for type character varying(256)
我正在尝试将pandas数据帧写入红移,但由于上述错误,无法工作。现在我有将近400个变量/列,其中大多数是字符串类型(基本上是描述或注释),不可能检查每个变量来发现问题。另外需要注意的一点是,数据帧将这些字符串或varchar类型的列视为“对象”类型


我试图搜索该问题,但没有看到太多信息

您遇到的是红移模式中设置的限制,而不是python或pandas中设置的限制。红移是基于PostgreSQL的,所以您可能会发现它很有用

这与Python无关——如果您在红移中指定256是限制——它将强制执行该约束。您可以在加载字符串之前将其截断,或者在256不够时运行
alter table
约束。您认为-这可能会增加长度吗?data.to_sql(name=“table”,con=engine,如果_exists='replace',index=False,dtype={'col1':sqlalchemy.types.VARCHAR(length=3000),'col2':sqlalchemy.types.VARCHAR(length=3000),'col3':sqlalchemy.types.VARCHAR(length=3000)}