d = {}
Pycharm의 코드 관리자 로 사전을 초기화하면 경고가 발생합니다.
이 사전 작성은 사전 리터럴로 다시 작성 될 수 있습니다.
다시 쓰면 d = dict()
경고가 사라집니다. 때문에 {}
이미 입니다 사전 문자 그대로, 나는 확실히 메시지가 잘못된 꽤 있어요. 또한, 모두 보인다 d = {}
및 d = dict()
유효하고 파이썬 있습니다.
이 관련 질문은 선택이 스타일 / 선호의 문제 일 뿐이라는 결론을 내린 것 같습니다.
“d = dict ()”와 “d = {}”의 차이점
Pycharm이 왜 불평 d = {}
할까요?
최신 정보:
맥은 못을 박았다. 경고는 실제로 플래그 된 것이 아니라 여러 줄에 적용되었습니다.
Pycharm은 사전을 초기화 한 다음 사전에서 값을 설정하는 일련의 연속 명령문을 찾는 것 같습니다. 예를 들어 경고가 트리거됩니다.
d = {}
d['a'] = 1
그러나이 코드는 :
d = {}
pass
d['a'] = 1
답변
사전 선언에 대한 다음 코드는 무엇입니까?
pycharm이 다음과 같은 경우 오류를 트리거한다고 생각합니다.
dic = {}
dic['aaa'] = 5
당신이 쓸 수 있듯이
dic = {'aaa': 5}
BTW : 함수를 사용하면 오류가 사라진다고해서 pycharm dict()
이 문자 그대로 라고 생각할 필요는 없습니다 . 그것은 다음에 대해 불평하지 않는다는 것을 의미 할 수 있습니다.
dic = dict()
dic['aaa'] = 5
HTH!
답변
프로젝트 설정 또는 기본 설정에서 비활성화 할 수 있습니다.
- 설정-> 검사-> Python으로 이동하십시오.
- “사전 작성을 사전 리터럴로 다시 작성할 수 있습니다”를 선택 취소하십시오.
답변
한 번의 조작으로 사전을 초기화하는 것을 좋아하는 사람들을 위해
d = {
'a': 12,
'b': 'foo',
'c': 'bar'
}
같은 많은 줄 대신
d = dict()
d['a'] = 12
d['b'] = ....
결국 나는 이것으로 끝났다.
d = dict()
d.update({
'a': 12,
'b': 'foo',
'c': 'bar'
})
Pycharm은 이것에 대해 불평하지 않습니다
답변
mydict = {
a: 5,
b:z+c/2
}
사전을 먼저 초기화 한 다음 새 값을 다시 할당하지 않고 사전을 직접 작성할 수 있습니다.
답변
나는이 경고가 지옥에서 나 빠지고있는 상황입니다. 필자의 경우, dict을 부분적으로 리터럴로 채우고 부분적으로 튜플 출력에서 함수로 채우고 있습니다.
def get_other_values():
return 3, 4
foo = {
"a": 1,
"b": 2
}
foo["c"], foo["d"] = get_other_values()
따라서 get_other_values 출력에 대한 임시 변수를 작성하지 않으면 리터럴을 사용하여 dict를 작성하더라도 PEP8에서이 경고를 생성합니다. 그리고 값이 튜플로 출력되므로 리터럴에 c 및 d 키를 할당 할 수 없습니다.