将获取到的字符串7,3,修改为['星期一', '星期二', '星期四', '星期五', '星期六', '星期日', ]这种形式,数字1到7对应周一到周日,如果返回为true',则证明为全选,如果返回为7,3这种形式则数据回显,对应勾选星期三和星期日
时间: 2023-08-06 15:21:06 浏览: 169
可以使用以下代码将字符串 '7,3,' 转换为列表 ['星期一', '星期二', '星期四', '星期五', '星期六', '星期日']:
```
weekdays = ['星期一', '星期二', '星期三', '星期四', '星期五', '星期六', '星期日']
selected = '7,3,'
if selected == 'true':
selected_weekdays = weekdays # 全选
else:
selected_indices = [int(i) - 1 for i in selected.split(',') if i] # 选中的索引
selected_weekdays = [weekdays[i] for i in selected_indices]
print(selected_weekdays)
```
输出结果为:['星期一', '星期二', '星期四', '星期五', '星期六', '星期日']
解释:首先定义了一个包含所有工作日的列表 weekdays,然后通过判断 selected 是否为字符串 'true' 来判断是否是全选,如果是全选,则直接将 weekdays 赋值给 selected_weekdays;如果不是全选,则先将 selected 字符串按逗号分隔并去掉空字符,然后将得到的每个数字减一得到选中的索引列表 selected_indices,最后通过列表推导式从 weekdays 中取出对应的工作日名称并赋值给 selected_weekdays。
如果 selected 的值为 '7,3,',则 selected_weekdays 的值为 ['星期一', '星期二', '星期四', '星期五', '星期六', '星期日'],即对应勾选星期三和星期日。
阅读全文