我的文件包含由制表符分隔的值("\ t").我正在尝试创建一个列表并将所有文件值存储在列表中.但我遇到了一些问题.这是我的代码.
line = "abc def ghi"
values = line.split("\t")
Run Code Online (Sandbox Code Playgroud)
只要每个值之间只有一个选项卡,它就可以正常工作.但是,如果有一个以上的选项卡,那么它也会将表复制到值.在我的情况下,大多数额外的选项卡将位于文件中的最后一个值之后.任何人都可以帮助我.
我是python和currenty的新手我正在尝试使用pylint来检查代码质量.我遇到了问题.我的pylint并没有指向virtualenv python解释器.这是我运行pylint --version时得到的输出
$ pylint --version
pylint 0.21.1,
astng 0.20.1, common 0.50.3
Python 2.6.6 (r266:84292, Jul 10 2013, 22:48:45)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)]
Run Code Online (Sandbox Code Playgroud)
在virtualenv我安装了python 2.7.如果有人可以指出我如何解决这个问题,那么会给你一些帮助.
我有以下字典
dict1 ={"city":"","name":"yass","region":"","zipcode":"",
"phone":"","address":"","tehsil":"", "planet":"mars"}
Run Code Online (Sandbox Code Playgroud)
我正在尝试创建一个将基于dict1的新字典,但是,
我已经能够满足要求2,但遇到了要求1的问题。这就是我的代码。
dict1 ={"city":"","name":"yass","region":"","zipcode":"",
"phone":"","address":"","tehsil":"", "planet":"mars"}
blacklist = set(("planet","tehsil"))
new = {k:dict1[k] for k in dict1 if k not in blacklist}
Run Code Online (Sandbox Code Playgroud)
这给了我没有键的字典:“ tehsil”,“ planet”我也尝试了以下方法,但是没有用。
new = {k:dict1[k] for k in dict1 if k not in blacklist and dict1[k] is not None}
Run Code Online (Sandbox Code Playgroud)
结果字典应如下所示:
new = {"name":"yass"}
Run Code Online (Sandbox Code Playgroud) 如果字典键有空值,我对问题检查有很好的帮助.但我想知道and和&python 之间是否存在差异?我认为它们应该相似吗?
dict1 ={"city":"","name":"yass","region":"","zipcode":"",
"phone":"","address":"","tehsil":"", "planet":"mars"}
whitelist = {"name", "phone", "zipcode", "region", "city",
"munic", "address", "subarea"}
result = {k: dict1[k] for k in dict1.viewkeys() & whitelist if dict1[k]}
Run Code Online (Sandbox Code Playgroud) 我正在使用 pylint 并使用 sonarqube 进行代码分析。一切都已安装并且工作正常。但是我收到错误“f0401”,表示我无法导入模块。这是我的目录结构。
\n\ntop level:\n directoryA\n __init__.py\n folderA\n some .py files \n directoryB\n __init__.py\n folderA\n some .py files\n directoryC\n __init__.py\n folderA\n some .py files\nRun Code Online (Sandbox Code Playgroud)\n\n我在 DirectoryA 上运行 pylint。目录 A 中的 .py 文件有一些来自目录 B 和目录 C 的导入。因此,当我在 DirectoryA 上运行 pylint 时,我会遇到导入错误,例如无法\'导入directoryB.somemodule\'。我希望我能够解释清楚。
\n\n有人可以帮助他解决这个问题吗?PS 如果一些 \xc2\xb4body 向我指出一些使用和调整 pylint 的好文档和教程,那就太好了。
\n我有两本词典.dict1和dict2.dict 2的长度始终相同,但dict1的长度不同.两个词典如下:
dict2 = {"name":"martin","sex":"male","age":"97","address":"blablabla"}
dict1 = {"name":"falak", "sex":"female"}
Run Code Online (Sandbox Code Playgroud)
我想创建一个基于dict1和dict2的第三个字典.dict3将具有dict2的所有值.但是所有这些键都将被替换为dict1中存在的键.这是由此产生的dict3
dict3 = {"name":"falak","sex":"female","age":"97","address":"blablabla"}
Run Code Online (Sandbox Code Playgroud)
我可以做多个if语句,但想要有一个更聪明的方法.可以请有人指导我这件事.
[:alpha:]如果我正在制作需要它的unicode正则表达式,那相当于什么.
例如,[:word:]它是[\w]
如果我得到一些帮助,将会很棒.
我有以下命令:
abc = {"type":"insecure","id":"1","name":"peter"}
Run Code Online (Sandbox Code Playgroud)
我想做的是基于旧字典创建一个新字典,其中没有键“type”,键“id”更改为“identity”。新的字典将如下所示:
xyz = {"identity":"1","name":"peter"}
Run Code Online (Sandbox Code Playgroud)
我想出的解决方案如下:
abc = {"type":"insecure","id":"1","name":"peter"}
xyz = {}
black_list_values = set(("type","id"))
for k in abc:
if k not in blacklist_values:
xyz[k] = abc[k]
xyz["identity"] = abc["id"]
Run Code Online (Sandbox Code Playgroud)
我想知道这是否是最快且有效的方法?目前,“abc”只有三个值。如果“abc”更大并且有很多值,那么我的解决方案仍然高效且快速。
我的字典如下:
dict1 = {"a":"foo","b":"bar","c":"foobar"}
Run Code Online (Sandbox Code Playgroud)
dict1的键是redis中键的字段.我想用hdel删除Redis中的那些字段.我想知道是否有可能一次发送多个字段到redis.
我想从dict1创建一个键列表并将其传递给redis.hdel,但它不起作用,我总是返回false.将会提供任何帮助/建议.
list1 = []
key = "somerediskey"
for k in dict1:
list1.append(k)
data = redis_connection.hdel(key, list1)
Run Code Online (Sandbox Code Playgroud) 我有以下字典:
OrderedDict([(u'b1', OrderedDict([(u'ip', u'199.0.0.1'), (u'port', u'1122')])),
(u'b2', OrderedDict([(u'ip', u'199.0.0.1'), (u'port', u'1123')]))])
Run Code Online (Sandbox Code Playgroud)
我想创建一个字符串,从字典中获取键并加入它们,但也放在它们:之间,因此结果将是
(b1:b2)
Run Code Online (Sandbox Code Playgroud)
字典中可以有很多键.有人可以帮我解决这个问题吗?
python ×9
dictionary ×4
pylint ×2
redis ×1
regex ×1
set ×1
sonar-runner ×1
sonarqube ×1
split ×1
string ×1
unicode ×1
virtualenv ×1