我有一个加密的xls文件,我可以复制该文件以使其可读,然后转换为csv并读取熊猫。清洁后,它会变成如下所示:
| pos | descr | serial | ref | type | val | qty | uom | |----- |--------------------------- |-------------- |---------------------------------------------------- |---------- |-------- |----- |----- | | 1 | Shower hose 1750 mm | 205L | 40874 | 9,5L/min | | 6 | PCS | | 2 | Hand shower 130 mm | | 40168 | 9,5L/min | | 4 | PCS | | 3 | Shower rail 600 mm | | 0351 MAKER: GROHE | | | 4 | PCS | | 4 | Basin mixer tap | HL23330000 | 039998 MAKER: GROHE, chrome | | | 2 | PCS | | 5 | Bowl Ceramic Kitchen sink | 548092900078 | RLCW 4920 Bowl White, Reversible MAKER: Reginox | | 10360 | 12 | PCS |
我想要的输出是这样:
| refnew | descr | qty | |--------------- |--------------------------------- |----- | | 40874 | Shower hose 1750 mm; SRL: 205L; | 6 | | | Type: 9,5L/min, UoM: MTR | | | 40168 | Hand shower 130 mm; | 4 | | | Type: 9,5L/min | | | 0351 | Shower rail 600 mm; MKR: GROHE | 4 | | 0399989381772 | Basin mixer tap; | 2 | | | REF: 0399989381772; | | | | SRL: HL23330000; | | | | MKR: GROHE, chrome | | | RLCW 4920 | Bowl Ceramic Kitchen sink; | 12 | | | Bowl White, Reversible; | | | | SRL: 548092900078; | | | | MKR: Reginox; Val: 10360 | |
简短:
我需要隔离参考号。 ['refnew']
中的内容,并放在if > 10
中。
条件:['desc']
个字符,需要在['desc']
中添加前缀:REF:。
但是:数据非常不一致,因此我也可以将其保留在['desc']
中。可以选择数据是否非常结构化,就像上面显示的那样。
如果> 30
字符串是[['serial'], ['type'] and ['val']]
,则应仅在空格后将其剪切并爆炸到新行。
应将['desc']
的值附加到longer than 30
,且条件为
:不为UoM
字符,并且不应超过2行,而应站立
(可选)如果['desc']
不是PCS,也应将其放入curl --unix-socket /var/run/docker.sock http://localhost/events
,以再次强调不同的度量单位。
我认为有很多问题要问。我很高兴得到提示
(即按最大长度连接列;
按最大长度展开行,并在每个列的末尾使用分隔符进行连接;
对行应用函数,例如(如果将“制造商:”替换为“ MKR:” ...)
感谢堆
P.S .:我是Python和SO的新手,请随时给我有关我问问题风格的反馈。