問題タブ [octal]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Python の stat 関数を使用して、所有者、グループ、およびその他の権限を効率的に取得する
質問:
stat関数を効率的に使用して意味のあるファイル権限 (ユーザー、グループ、その他) を取得するにはどうすればよいですか。
詳細:
次のようにファイルのアクセス許可を照会しています。
これは、パーミッションを 10 進形式で返します。したがってfooBar.txt
、8 進数のファイル許可がある場合0700
、ここでpermissions
は 10 進数の値が設定されます448
。私が望むのは、パーミッションごとに 9 つの変数 ( ownerRead
、ownerWright
、ownerExecute
、groupRead
...) を設定することです。これを行う場合は、次のようなブルート フォース メソッドを使用します。
この関数がかなり呼び出されるため、8 進数に変換することなくこれを行うより効率的な方法はありますか?
ruby - 無効な 8 進数エラー
Ruby で無効な 8 進数エラーが発生しました。これを回避するにはどうすればよいですか? API に送信する必要がある数字 が0962833
ありますが、無効な 8 進数エラーが発生するため、送信できません。
その数値を文字列に変換せずに回避する必要があります。ゼロは削除できません。必須です。
language-agnostic - 8進数を表すために先行ゼロが使用されるのはなぜですか?
私はいつも0
、たとえば—の代わりに、先行ゼロ()が8進数を表すために使用されるのか疑問に思っていまし0o
た。の使用は同じように役立ちますが、主要なes(JavaScriptなど)0o
ほど多くの問題を引き起こすことはありません。このデザインの選択の背後にある理由は何ですか?0
parseInt('08');
python - 「0」で始まるpython数値リテラルが8進数として扱われないようにする方法は?
整数として提供されるjob
byjobNumber
のフェッチをサポートする小さな Python 2.x API を作成しようとしています
。jobNumber
時々、ユーザーはjobNumber
0 で始まる整数リテラルとしてa を提供します037537
。(これは、R を適切に考慮する言語である R によって甘やかされてきたため037537==37537
です。) ただし、Python は、「0」で始まる整数リテラルを 8 進数と見なし、したがって037537!=37537
、代わりに037537==16223
. これは、最小の驚きの原則に対する露骨な侮辱であると私は思います。ありがたいことに、これは Python 3 で修正されたようです--- PEP 3127を参照してください。
しかし、現時点では Python 2.7 に固執しています。だから私のユーザーはこれを行います:
黙って間違ったジョブ (16223) を取得するか、次のようにします。
ここで、Python は 8 進数と互換性のない数字を拒否しています。
Py3K の動作を取得できるようにするために提供されたものは何もないようです__future__
---少なくともレクサーの変更が必要になるため、何らかの方法で Python に組み込む必要があります。
このような場合に、ユーザーが間違った仕事に就くのを防ぐ方法を知っている人はいますか? 現時点で考えられる最善の方法は、その API を変更して、int ではなく文字列を取ることです。
c++ - 文字列/8進数を使用したintラムダ式? (C++)
私はオープンブックテストを受けましたが、適性検査のようなものなので、質問に答えるために必要なあらゆるリソースを使用できると言われました.1つの質問で本当に困惑しました.
質問は、与えられたものと同様の関数を書くことを求めています-私はできると確信しています-しかし、関数が何をしているのかについて多くの情報を見つけることができません.小さなサンプルを考えると、何が起こっているのかを判断するのは難しいです.
質問は次のとおりです。
プログラムは何を印刷しますか? 同等の getValue 関数を記述してください。
プログラムは「0」を出力しますが、これは簡単な部分です。そして、それを返す単純なメソッドで答えたくなる。しかし、getValue 関数で正確に何が起こっているのかをより深く理解したいと思っています。\8 は有効な 8 進数ではありませんが、結果の値に何らかの影響を与えるように見えるため、私の主な好奇心は、ラムダ式に関して文字列部分が何をするかです。
率直な答えを探しているのではなく (私が収集したものから、宿題タグを使用する理由です)、正しい方向へのプッシュだけです。
助けてくれてありがとう
c - Cの文字列内の8進表現
与えられたプログラムでは:
出力は次のように表示されます。
63 55 0
-?---7-- ----
\ 0(\ 077)の後の最初の2文字を8進数から10進数に変換していることは理解できますが、なぜ2文字なのか、なぜ1、3、またはその他の文字なのかを説明できますか?
この背後にある論理を説明してください。
math - 素人の言葉で言えば、8の補数の6桁の8進数の「計算」?
8の補数で6桁の8進数の正/負の範囲をどのように見つけますか?私が理解していることから、それは単に半分です-1:
000001 - 377777 positives, 400000 - 77777 negatives
377777が最も高い正の数であり、777777が最も高い負の数でしょうか?
それが正しければ、377777と777777は互いに補完し合っているように思えます。しかし、私が読んだものから、補集合を見つけるために、底から数を引きます。そうすると、377777は次のようになります。
7 - 3 = 4
7 - 7 = 0
7 - 7 = 0
7 - 7 = 0
7 - 7 = 0
7 - 7 = 0
= 400000
これは、400000が37777の補数であることを示しています(これは私とは逆に見えます)。
java - 文字列の不正なエスケープ文字
質問の1つに答えている間、私はこの興味深い状況に出くわしました。
次のような文字列がある場合、Netbeansはそれがであると文句を言いませんillegal start of expression
。
「1」を削除するとすぐに、それが。であると文句を言いillegal start of expression
ます。
この動作の理由を理解できませんでした。任意の入力をいただければ幸いです。
観察:それは特別な意味\9
を持っているようです。\8
のためだけに\9
、\8
私は得てillegal start of expression
います。それが文句を言っていない他のすべての組み合わせ。
objective-c - NSLogを使用してObjective-cで8進形式のオブジェクトを表示する
ファイルのアクセス許可を8進数で表示したいと思います。以下のコードは機能しますが、権限は10進数でのみ表示されます。結果を8進数に変換する方法はありますか?%oは正しい結果を表示しません。
ありがとう
php - isHex()およびisOcta()関数
私には2つの機能があります。IsOctaおよびisHex。isHexを正しく動作させることができないようです。
isHex()の問題は、元の文字列x23の「x」表記を省略できないことです。
元の16進srtingもD1CEにすることができます。したがって、xを追加してから比較しても効果はありません。
isHex関数の正しい解決策はありますか?また、isOctaは正しいですか?
関数の呼び出しは次のとおりです。
関数呼び出しの結果は次のとおりです。
=====完全な回答====
HEXADECIMAL文字が文字列に存在するかどうかをテストする組み込み関数を紹介してくれたLaykeに感謝します。また、ltrimを使用するためのヒントを与えてくれたマリオにも感謝します。isHexaを取得するには両方の関数が必要でしたが、ビルドする16進関数です。
---編集された機能-
おそらく今、これは「16進数」関数に対するばかげた答えですか?