python – 方法中的单个字符串或字符串列表
发布时间:2021-03-30 18:00:58 所属栏目:Python 来源:互联网
导读:我已经遇到了这么多次.我正在处理很多可以接受字符串列表的方法.几次我不小心传递了一个字符串,它被分解成一个列表,并使用每个字符,这不是所需的行为. def test(a,b): x = [] x.extend(a) x.extend(b) return xx = [1,2,3,4] 我不想发生什么事情 test(x,test)
我已经遇到了这么多次.我正在处理很多可以接受字符串列表的方法.几次我不小心传递了一个字符串,它被分解成一个列表,并使用每个字符,这不是所需的行为. def test(a,b): x = [] x.extend(a) x.extend(b) return x x = [1,2,3,4] 我不想发生什么事情 test(x,'test') [1,4,'t','e','s','t'] 我必须诉诸一个奇怪的语法: test(x,['list']) 我想让这些工作隐含地工作: test(x,'list') [1,'test'] test(x,['one','two','three']) [1,'one','three'] 我真的觉得有一个“pythonic”的方式来做这个或涉及鸭打字的东西,但我看不到它.我知道我可以使用isinstance()来检查它是否是一个字符串,但我觉得有更好的方法. 编辑:我使用的是python 2.4.3 解决方法嗯,这可能很简单:>>> def a(*args): ... x=[] ... for i in args: ... if '__iter__' in dir(i): ... x+=list(i) ... else: ... x.append(i) ... return x ... >>> a(1,4) [1,4] >>> a(1,[3,4]) [1,4],'123') [1,'123'] >>> a(1,'123',1231,(1,4)) [1,1,4] (编辑:甘南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- python – 将几个正则表达式合并到一个RE中
- python – 让namedtuple接受kwargs
- python /烧瓶/ Jinja2和Json
- 有没有办法让Django的USStateField()没有预先选择的值?
- 即使在运行迁移后,Django Programming错误列也不存在
- flask:wsgi-middleware vs before_和after_request()
- Python – 立即引导大量敌人
- python – Pyro4:找不到名称服务器
- python – SQLAlchemy过滤器查询由相关对象
- python – Aiohttp,Asyncio:RuntimeError:事件循环已关闭