0
모든 사용 권한을 활성으로 설정하는 8 진 정수는 0777입니다. 그런 다음 동일한 문자열 값을 인쇄 할 때 511을 얻는 이유는 무엇입니까?파이썬의 stat 모듈에서 stat.S_IRWXU | stat.S_IRWXG | stat.S_IRWXO, 왜 777 대신 511을 얻습니까?
모든 사용 권한을 활성으로 설정하는 8 진 정수는 0777입니다. 그런 다음 동일한 문자열 값을 인쇄 할 때 511을 얻는 이유는 무엇입니까?파이썬의 stat 모듈에서 stat.S_IRWXU | stat.S_IRWXG | stat.S_IRWXO, 왜 777 대신 511을 얻습니까?
0777
은 8 진수 표현입니다.
당신이 숫자의 진수 표현을 얻고 싶다면 = 7 * (8**2) + 7 * (8**1) + 7 * (8**0)
>>> 0777
511
>>> 7 * (8**2) + 7 * (8**1) + 7 * (8**0)
511
>>> 0777 == 777
False
다른 단어에서
, 0777
, 적절한 형식 지정자로 oct
, %
운영자 또는 str.foramt
를 사용
>>> oct(511)
'0777'
>>> '%o' % 511
'777'
>>> '{:o}'.format(511)
'777'
... 왜냐하면'7 + (7 * 8) + (7 * (8 ** 2)) == 511'? – jonrsharpe