はてなキーワード: trueとは
ChatGPTに日本語で命令したら秒で作ってくれるのでVBAやGAS書く能力は不要になったんだが。「A1からI9に数独の初期値入れてあるシートの残りのマス埋めるVBAマクロ作って」の一言で数独解くの作ってくれるぞ
ChatGPTが補足している通りロジックは基本しか使っていないので初期値から最終形までに仮定して入れる局面があるものは解けないし非効率ではあるものの初級は解けるし遅いPCでも一瞬で終わる。必要なのは入力の形と欲しい出力を日本語にする能力とHello World実行できるレベルの知識。コード読んでデバッグできる能力があればなおよいがGPTに教えてもらえばいいし、今業務やってる派遣の人に動作確認してもらって不満なところをAIに修正させればよいので業務をよく分かっている社員にやらせたほうが会社としてはいい戦略。
A1からI9に数独の初期値入れてあるシートの残りのマス埋めるVBAマクロ作って
数独を解くためのVBAマクロを作成するのは複雑ですが、以下は一つの例です。このマクロはシートのA1からI9の範囲の数独を解きます。
Function IsPossible(y, x, n, grid) As Boolean Dim i As Integer Dim j As Integer ' 同じ行や列にnが既にあるか確認 For i = 1 To 9 If grid(y, i) = n Or grid(i, x) = n Then IsPossible = False Exit Function End If Next i ' 3x3のボックス内にnが既にあるか確認 Dim x0 As Integer: x0 = ((x - 1) ¥ 3) * 3 Dim y0 As Integer: y0 = ((y - 1) ¥ 3) * 3 For i = 0 To 2 For j = 0 To 2 If grid(y0 + i + 1, x0 + j + 1) = n Then IsPossible = False Exit Function End If Next j Next i IsPossible = True End Function Sub SolveSudoku() Dim grid(1 To 9, 1 To 9) As Integer Dim i As Integer Dim j As Integer ' グリッドをシートから読み込む For i = 1 To 9 For j = 1 To 9 grid(i, j) = Cells(i, j).Value Next j Next i If Solve(grid) Then ' 解をシートに書き出す For i = 1 To 9 For j = 1 To 9 Cells(i, j).Value = grid(i, j) Next j Next i Else MsgBox "解けませんでした" End If End Sub Function Solve(ByRef grid) As Boolean Dim i As Integer Dim j As Integer Dim n As Integer For i = 1 To 9 For j = 1 To 9 If grid(i, j) = 0 Then For n = 1 To 9 If IsPossible(i, j, n, grid) Then grid(i, j) = n If Solve(grid) Then Solve = True Exit Function End If grid(i, j) = 0 End If Next n Solve = False Exit Function End If Next j Next i Solve = True End Function
このコードをVBAのモジュールに追加して、シートに数独の初期値を入力してからSolveSudokuマクロを実行すると、マスを埋めることができます。
ただし、このコードは基本的なバックトラック法を使用しており、非常に複雑な数独には効率的ではない場合があります。より高速な解法や最適化を求める場合は、追加の手法やアプローチが必要です。
https://si-coding.net/sudoku4.html
2 3 5 7 8 3 3 4 5 1 6 6 1 2 4 4 9 8 2 2 5 1 3 9 4 6 1 4 1 2 6
1 6 9 2 3 5 8 4 7 4 5 8 1 6 7 9 3 2 3 2 7 9 8 4 5 1 6 5 3 6 7 1 2 4 9 8 7 1 4 3 9 8 6 2 5 9 8 2 5 4 6 1 7 3 6 9 1 8 2 3 7 5 4 2 4 5 6 7 9 3 8 1 8 7 3 4 5 1 2 6 9
これか?知らんかったなあ。
---
2017年のドキュメンタリー『AVICII: TRUE STORIES』では、アヴィーチーが身体的・精神的な不調を抱える様子と、そんななかでもライブパフォーマンスを続けるようにマネジメントからプレッシャーを受けていたことが明かされた。
…
遺族による2つ目の声明では「あまりにも完璧主義者であることから、世界中を旅するなかで心の中に平和を見つけることができずに、極度のストレスを抱えていました。(中略)物事の意味、人生、幸せについて考えることと闘っていました。しかしこれ以上続けることはできなかったのです。平和を見つけたかったのです」と、彼の死が自殺だったことを示唆する内容のコメントが綴られた。
https://chat.openai.com/share/c80d83ea-752b-4561-a162-7ea0bd116d56
Option Explicit
Dim objExcel, objWorkbook, objWorksheet
Dim strFolderPath, strSourceFile, strTargetFile, strSearchString, strReplaceString
Dim intLastRow, intRow, intColumn
Set objExcel = CreateObject("Excel.Application")
strFolderPath = ".\" ' スクリプトと同じフォルダにあることを仮定
strSourceFile = "変更一覧.xlsx"
strTargetFile = "変更一覧.xlsx"
Set objWorkbook = objExcel.Workbooks.Open(strFolderPath & strSourceFile)
objWorkbook.Sheets("1月").Copy , objWorkbook.Sheets("1月").Index
objWorkbook.Sheets("1月 (2)").Name = "2月"
' セルの値の置換
Set objWorksheet = objWorkbook.Sheets("2月")
objWorksheet.Cells(1, 1).Value = Replace(objWorksheet.Cells(1, 1).Value, "1月", "2月")
objWorksheet.Cells(2, 7).Value = Replace(objWorksheet.Cells(2, 7).Value, "2023/2/14", "2023/3/14")
' 最終行の取得
intLastRow = objWorksheet.Cells(objWorksheet.Rows.Count, 1).End(-4162).Row ' xlUp
' 値のクリア
For intRow = 8 To intLastRow
For intColumn = 1 To 6
objWorksheet.Cells(intRow, intColumn).ClearContents
Dim objFSO, objTextFile, strContents, arrLines, arrFields, strNewContents
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile(strFolderPath & "変更一覧.txt", 1)
strContents = objTextFile.ReadAll
objTextFile.Close
arrLines = Split(strContents, vbNewLine)
For Each strContents In arrLines
arrFields = Split(strContents, ",")
For Each strContents In arrFields
If IsNumeric(strContents) Then
strNewContents = strNewContents & "'" & strContents & ","
Else
strNewContents = strNewContents & strContents & ","
End If
strNewContents = Left(strNewContents, Len(strNewContents) - 1) & vbNewLine
' データをシートに貼り付け
Set objWorksheet = objWorkbook.Sheets("2月")
objWorksheet.Cells(1, 8).Value = strNewContents
' セルの値の置換
objWorksheet.Cells(123, 1).Value = Replace(objWorksheet.Cells(123, 1).Value, "F", "FH")
objWorkbook.Save
objWorkbook.Close
objExcel.Quit
そうそう、真珠湾攻撃も核攻撃も先制攻撃も自衛権の範囲だからな。嘘つきさん。
あとウクライナがナチスではないとかどこまで馬鹿なのか。ウクライナを支持している時点でナチスだよ。
But even though Putin is engaging in propaganda, it’s also true that Ukraine has a genuine Nazi problem — both past and present. Putin’s destructive actions — among them the devastation of Jewish communities — make clear that he’s lying when he says his goal is to ensure anyone’s welfare. But important as it is to defend the yellow-and-blue flag against the Kremlin’s brutal aggression, it would be a dangerous oversight to deny Ukraine’s antisemitic history and collaboration with Hitler’s Nazis, as well as the latter-day embrace of neo-Nazi factions in some quarters.
しかし、プーチン大統領がプロパガンダに取り組んでいるとしても、ウクライナが過去も現在も真のナチス問題を抱えていることも事実だ。 プーチン大統領の破壊的な行動、その中にはユダヤ人コミュニティの破壊も含まれるが、自分の目標は誰かの福祉を確保することだと言っているプーチン大統領が嘘をついていることは明らかだ。 しかし、クレムリンの残忍な侵略から黄と青の国旗を守ることは重要であると同時に、ウクライナの反ユダヤ主義の歴史とヒトラーのナチスとの協力、そしてネオナチ派の末日の受け入れを否定することは危険な見落としとなるだろう。いくつかの地区では。
In another ominous development, Ukraine has in recent years erected a glut of statues honoring Ukrainian nationalists whose legacies are tainted by their indisputable record as Nazi proxies. The Forward newspaper cataloged some of these deplorables, including Stepan Bandera, leader of the Organization of Ukrainian Nationalists (OUN), whose followers acted as local militia members for the SS and German army. “Ukraine has several dozen monuments and scores of street names glorifying this Nazi collaborator, enough to require two separate Wikipedia pages,” the Forward wrote.
もう一つの不気味な展開として、ウクライナは近年、ナチスの代理人としての議論の余地のない経歴によってその遺産が汚されたウクライナ民族主義者を称える像を大量に建てている。 フォワード紙は、ウクライナ民族主義者組織(OUN)の指導者ステパン・バンデラを含む、こうした嘆かわしい人物の一部を目録にまとめ、その支持者たちは親衛隊やドイツ軍の地元民兵として活動していた。 「ウクライナには、このナチスの協力者を称賛する数十の記念碑と多数の通りの名前があり、ウィキペディアの2つの別々のページが必要になるほどだ」と同紙は書いた。
ざっくり言えば「レタスをごま油と塩ダレで和えたサラダ」である。
ワカメや海苔を入れたり、ドレッシングが醤油ダレだったりすることも多い。
韓国料理だと思っている人もいるだろうが、実はこのサラダは韓国には存在しない。
そもそも韓国人に「チョレギ」と言っても通用しないらしいのである。
では「チョレギ」とは何なのか?
かつて多かったのは「チョレギ」=「ちぎるという意味の韓国語」という説明である。
しかし実際に調べてみると、韓国語で「ちぎる」は「뜯다(トゥッタ)」や「찢다(チッタ)」と言う。
この説は明確に誤りと言えそうである。
もう一つは「チョレギ」=「韓国語で浅漬けのキムチを意味するコッチョリの方言チェレギ」という説である。
おそらく以下のようなブログで書かれた内容が広まったのだろう。
https://www.kansyoku-life.com/2006/04/86.html
結論から言うと「コッチョリ」の慶尚道方言で、現地の発音では「チェレギ」と呼ばれます。
「コッチョリ」とは浅漬けにしたキムチのことで、発酵期間をおかず、漬けてすぐに食べるのが特徴です。
現在はWikipediaなどでも概ねこの説が踏襲されている。
しかし疑問は残る。
サンチュコッチョリは「サンチュを唐辛子ダレで和えたサラダ」とでも言うべきものであり「レタスをごま油と塩ダレで和えたサラダ」ではない。
ワカメなどはサンチュコッチョリでも使われることがあるらしいのでいいにしても、少なくとも唐辛子が使われていないとコッチョリとは言えないのではないか…?
さて、「チョレギ=ちぎる」説について、前掲の記事ではこう説明されている。
チョレギの意味が混乱しているのは、日本にやってきた当初の説明不足が原因だと思われます。
チョレギドレッシングなるものを発売し、大々的にチョレギの名前を日本に広めました。
2001年当時のエバラのウェブサイトを確認してみると、たしかにそう書いてある。
https://web.archive.org/web/20011214042210/http://www.ebarafoods.com/news/recipe/choregi_recipe.htm
チョレギとは?
しかも、当時のエバラの「焼肉屋さんのチョレギサラダ」シリーズには「あっさり塩味」「ピリ辛コチュジャン味」「焙煎ごま醤油味」があったらしい。
つまり当時のエバラは「チョレギサラダ」を「ちぎった生野菜の韓国風サラダ」というだけの意味で使っていて、味付けはさまざまなものを想定していたのだろう。
ただ、「焼肉屋さんのチョレギサラダ」は2005年頃に販売終了、その後はチョレギドレッシングを発売しても塩味だけにラインナップを絞っているようだ。
あまり売れなかった(あるいは塩味しか売れなかった)のかもしれないが、当時は印象的なCMを盛んに流していたので「チョレギサラダ」の知名度は向上したものと思われる。
では、エバラがドレッシングを発売する以前、日本で「チョレギ」はどのくらい広まっていたのだろうか?
「国立国会図書館内限定」なのでネット上では内容を確認できないが、以下のような記述らしい。
女性に人気があるのは、いうところの野菜サラダであるチョレギなる代物。特製の味つけは店の極秘というだけあって、その味はちょっとしたもの。
OCRの精度がかなり怪しいが、どうも「神宮前の『神宮』」という焼肉店を取り上げているのではないかと思われる。
こちらも、おそらく「青山の家の近くに開店した焼肉屋さんの『第一神宮』」という店について書かれている。
この神宮前の「神宮」と青山の「第一神宮」はおそらく同じ店を指していると思うのだが、
「第一神宮 青山店」はつい最近まで営業していたので食べログにも載っている。メニューを見ると、
https://tabelog.com/tokyo/A1306/A130603/13001197/dtlmenu/
チョレギ 700円
ワカメチョレギ 800円
と、しっかり「チョレギ」が確認できる。「ワカメチョレギ」もある。
また写真を見るかぎりでは唐辛子は確認できず、それほど辛くはなさそうだ。
そうしてみると、韓国のサンチュコッチョリをもとに現在のようなチョレギサラダを作り出したのは「第一神宮」なのではないか、と推測したくなる。
(もちろん記録に残っていないだけで他店でさらに古くから存在した可能性はある)
あっさり味のサラダ「コッチョリ」
1980年代の時点ですでに「コッチョリ」も「韓国風サラダ」という意味になっていたようだ。
また「あっさり味」「ごま風味の辛みダレ」「しょうゆベースの甘辛いドレッシング」などはそれぞれ異なる味付けに思える。
こうしたバリエーションを眺めて、エバラが「塩味」「コチュジャン味」「醤油味」を発売したというのなら筋が通る。
韓国ではどちらかというと「コッチョリ」と呼ばれることが多いらしい。
特にサンチュのコッチョリは「唐辛子ダレの野菜サラダ」と言える料理である。
日本では1970年代から「第一神宮」という焼肉店が「野菜サラダ」として「チョレギ」を提供していた。
それはコッチョリというよりも、おそらく現在のチョレギサラダに近いかたちにローカライズされたものだった。
1980年代以降、チョレギやコッチョリは焼肉店などを通して広まり、さまざまな「韓国風サラダ」の総称となっていった。
2001年に、エバラが韓国風サラダドレッシングを商品化した。
「塩味」「コチュジャン味」「醤油味」があり、それがおそらく当時の焼肉店でよく見られた韓国風サラダのラインナップだったのだろう。
また、そのとき「チョレギサラダ」という呼称が採用されたことにより、「コッチョリ」よりも「チョレギ」という呼称が広まることになった。
といった感じでどうだろうか。
1940年1月1日までにポーランドとフランスを降伏させれば達成できる。
1936年にポーランドに自力で正当化して1937年に併合、1938年〜1939年にフランス戦(連合国戦)やって降伏させて達成。
「ラインラント」は取らない。戦争することで非武装地帯が解除されるので自動達成できるため。
「四ヶ年計画」から始まる工場がもらえるツリーを適当に取る。あと「陸軍の諸改革」を取った。師団速度が上がる陸軍長官が好きなので。
政治力+15% の閣僚を二人雇ったらポーランドに正当化、という手順をやった。でもこれ、たぶん閣僚雇う前に正当化始めたほうがよかった気がする。その後は「労働条件の改善」をしたり、陸軍長官と空軍長官を雇ったり、「幻惑の紳士」を雇ったりする。
最初になんとなく民需工場を二つ建てて、あとはずっと軍需工場を立てた。たぶんずっと軍需でいいと思う。
歩兵装備の出る数だけ歩兵を徴兵する。ポーランド国境に並べる。開戦までに歩兵24師団の追加を目論む。
諜報機関設立して暗号部門を五つ強化するまで進めて、諜報員を二人出す。その後はしばらく強化しない。アンシュルスなど済んで民需に余裕が出来たら再開する。諜報員はポーランドに仕込む。
正当化が終わったらすぐに宣戦。東側飛び地の東プロイセン国境に24師団歩兵を並べておき、ここは動かさず固めておく。広い方の国境に歩兵24師団を並べて開戦と同時に突っ込ませる。戦車と騎兵は別の軍団にして、西プロイセンとダンツィヒに突撃して東プロイセンと繋ぎに行く。飛行機を全て西ポーランドに飛ばして補助。
海軍は特にすることはない。暇なのでバルト海で通商破壊したり機雷撒いたりしとく。
ある程度押し込んで東プロイセンと繋がったら、東プロイセンの軍団も南下を開始。ワルシャワとあと少しを押さえたらポーランドは降伏する。
講和会議では全併合する。国際緊張度が上がるが仕方ない。傀儡化するとたぶん実績が取れなくなる。(一敗)
「ラインラント」が自動達成できるので取る。「アンシュルス」が取れるようになったらすぐ取る。
その後は産業系を適当に取って内政。あらかた取ったら「東方地帯の再要求」の後、「ダンツィヒか戦争か」をポーランドがいないので自動達成、「マジノ線迂回」で開戦事由を取りに行った。でも NF で開戦事由取るより、自力で正当化した方がよかったような気もする。
ポーランド戦が終わったら諜報員をフランスに仕込む。「協力政府の作成」を一段階やって降伏を早めておく。その後はフランスの諜報網は休止、ベルギーとオランダに諜報員を入れて開戦に備える。
軍需工場や合成精製所を建てる。対仏戦直前は、レーダー建てたり対空砲建てたりしてた。
歩兵師団と軽戦車師団を適当に徴兵する。出せれば中戦車を出したかったが、間に合わなかったのでこれで押し切った。
NFで得た開戦事由で低地地方にまとめて宣戦。すると英仏が宣戦してくるので世界大戦勃発。歩兵師団を仏国境に並べて固めておく。マジノ線に突撃するのは無謀なのでここは動かさない。残りの歩兵師団と戦車師団を補給ができそうな数だけ低地地方に突っ込ませる。予備の師団はオーストリアで待機。
空軍は戦闘機を少しドイツ領の防空に配置し、残りを全部低地地方に飛ばす。
海軍は動かしてもボコボコにされるだけ。交戦を避けながら機雷を撒いたり、スペイン沖の深海でちょっと通商破壊したり位しかできない。
しばらくするとイタリアが枢軸に加盟してくれるので、すぐに予備師団を伊仏国境に貼り付ける。準備ができたらイタリアを参戦させて攻撃開始。
低地地方が終わったら南下。諜報網も再開。フランスの勝利点を少し取ったら降伏してくれて実績が達成できた。実績が取れたのでここで終わり。
https://www.python.jp/train/tuple/index.html
以下、気になったところ。
タプル
Pythonでは、複数のデータの組み合わせから構成されているデータを表現する場合、タプル という種類のオブジェクトを利用します。
タプルの書き方
タプルは、要素となるデータを「 , 」で区切って記述できますが、「, 」だけだとちょっと見にくいので、通常は全体を丸括弧 () で囲んで記述します。
ningyocho = (35.686321, 139.782211)
kotoshi = ('平成', 2)
この括弧は必須ではありませんが、括弧なしでは読みにくく、間違いの元になる場合もあるので、通常は括弧をつけて記述する慣習になっています。
タプルオブジェクトの要素を参照する
タプルオブジェクトに登録したオブジェクトは、リスト と同じように 要素の順番 を指定して参照できます。
タプルオブジェクト[要素の順番]
== 演算子でタプル同士を比較すると、同じ値のタプルならTrue を返します。
!= 演算子でタプル同士を比較すると、異なる値のタプルなら True、等しい値なら False を返します。
タプル同士の値の比較は、先頭の要素から順番に同じインデックス同士の値を比較して、先に小さい値となったタプルが小さい値となります。
比較するタプル同士の長さが異なる場合、短いタプルの要素と長いタプルの要素を比較してすべて等しければ、短い要素のほうが小さい値となります。
タプルオブジェクトの場合、リストオブジェクトのように要素を変更することはできません。
タプルオブジェクトの要素を変更する場合は、リストオブジェクトのように要素を変更するのではなく、あたらしくタプルオブジェクト全体を作り直す必要があります。
タプルとリスト
リストとタプルはどのように使い分ければよいのでしょうか?
タプルは複数のデータの組み合わせから構成されているデータのためのオブジェクトです。
複数の要素から構成される独立したデータ をあらわすときは、タプルを使用します。
固定的な形式をもつ独立したデータではなく、不定個数の独立したデータをたくさん集約してまとめておきたい、という用途には、リストが適しています。
数値オブジェクトは、物質の重さや長さなど、いろいろなデータの値を直接あらわすオブジェクトです。
一方、 リストや辞書は、直接的なデータではなく、いろいろなデータを登録して、集約しておくために使われるオブジェクトです。
リストやタプル、辞書のように、他のオブジェクトを集約することを目的とした種類のオブジェクトのことを、
コレクション (Collection)
と呼びます。
コレクションに登録されている要素の数は、len() 関数で調べられます。
コレクションは、比較演算子 の == 演算子や != 演算子で、値が等しいかどうかを判定できます。
in 演算子を使うと、コレクションに値が登録されているかどうかを調べられます。
in 演算子は < や == のような 比較演算子 の一種で、
値 in コレクション
という式は、指定した値がコレクションに登録されていれば True を、登録されていなければ False を返します。
辞書オブジェクトの場合、in 演算子は指定した キー が 登録されているかどうかを調べます。
文字列オブジェクトの場合も、in 演算子で中に文字が含まれているかどうかを確認できます。
コレクションは、 for 文に指定して、コレクションの要素ごとに、for 文に記述した処理を実行できます。
辞書オブジェクトを for 文に指定すると、辞書のすべての キー を取り出して、for文に指定した処理を行います。
リスト・タプル・文字列はいずれも コレクション に属するオブジェクトですが、コレクションの一種で、整数値のインデックスを指定して要素を参照できるオブジェクトのことを、
シーケンス (Sequence)
と呼びます。
リストやタプルなどのオブジェクトは、コレクションの一種で、他のオブジェクトを登録し、集約できるオブジェクトです。
シーケンスとは、コレクションのうちで、集約する要素が一定の順序で並んでいて、その順序(インデックス)を使ってその要素を指定できる種類のオブジェクトのことを指します。
コレクションに属するオブジェクトでも、リストやタプルとは違って、辞書 は、順序を指定して要素を指定することはできません。
タプルやリスト、文字列などのシーケンスオブジェクトは、 <、 <=、>、>= などの演算子で、値の大小を判定できます。
シーケンスではない、辞書オブジェクトなどのコンテナオブジェクトは、 < などによる大小の比較はできません。比較すると、エラーとなります。
コレクションのアンパック
代入式の右辺がコレクションなどの場合には、左辺に複数の変数名を指定して、コレクションの要素を一括して変数に代入できます。
(例)
list_obj = [1, 2, 3]
var1, var2, var3 = list_obj # var1, var2, var3 に、list_objの要素を順に代入
print(var1, var2, var3)
1 2 3
変数 var1、var2、var3 には、右辺のリストオブジェクトの要素が一つずつ順番に代入されます。
この場合、var1 には list_obj の最初の要素である 1が、var2、var3 には、それぞれ2番目と3番目になる 2 と 3 が代入されます。
アンパックを利用した代入は、Pythonプログラミングで頻繁に利用されます。
アンパックは、複数の値を戻り値とする 関数 でよく使われます。
関数で計算した結果は、return文 を使って、戻り値として返します。
しかし、関数 total_and_average() は合計値と平均値の2つを計算しますが、 return文 に指定できる戻り値は一つだけです。
(例)
def total_and_average(values):
total = 0 # 合計値の初期値 0 を設定
average = total / num
return (total, average)
戻り値としてタプルを使い、複数の値を一度に返す関数はとてもよく使われます。
テクニックとして覚えておきましょう。
https://www.python.jp/train/dict/index.html
以下、気になったところ。
あるデータに対応する関連データを登録できるような仕組みとして、Pythonは 辞書オブジェクト を用意しています。
辞書オブジェクトには、apple と りんご のような、2つの値を組み合わせた情報を登録できます。
apple と りんご の組み合わせを登録した辞書オブジェクトで、apple を検索すると、本物の英和辞典とおなじように りんご が返ってきます。
これらの基本的なデータ構造は、Pythonだけに限らず、他のプログラミング言語でも用意されている機能である。
キーと値
english_words = {"apple": "りんご", "orange": "みかん", "peach": "もも"}
print(english_words)
辞書の参照
辞書オブジェクトに登録した要素は、次のような式で参照できます。
辞書に登録されていない値のキーを指定すると、次のようにKeyError というエラーが発生します。
english_words['banana']
---------------------------------------------------------------------------
KeyError
要素の追加と置き換え
辞書オブジェクトに要素を追加するときは、次のように記述します。
要素の削除
辞書オブジェクトに登録されている要素を削除するときには、del 文を使います。
辞書にキーが登録されているかどうか調べるときは、in 演算子を使います。
in 演算子は < や == のような 比較演算子 の一種で、
という式は、指定したキー値が辞書オブジェクトに登録されていれば True を、登録されていなければ False を返します。
https://www.python.jp/train/list/index.html
以下、気になったところ。
Pythonでは、整数や実数、文字列などのデータのことを、オブジェクト(Object) という用語で呼びます。
Objectは英語で「物」とか「対象」とかいう意味の言葉ですが、Pythonでは、Pythonが操作するいろいろな種類のデータやプログラムなどのことを、まとめて オブジェクト と呼びます。
たとえば、数字の2は、整数型のオブジェクト、文字列の abc は、文字列型のオブジェクト という呼び方をします。
def foo():
print("hi!")
演算子やwhile文 ・ if文 などはPythonに対する実行命令で、実体のあるオブジェクトではありません。
数値などの値のように、変数に代入したり、関数のように関数名を指定したりと、プログラマが名前をつけられるものはオブジェクト、
と考えると良いと思います。
この説明だけでは、Pythonのオブジェクトについて曖昧さが残りスッキリしない。
Pythonの言語仕様で、オブジェクトはどうなっているのか?検索してみた。
cf. [Python入門]Pythonのオブジェクトとは - ITmedia
https://atmarkit.itmedia.co.jp/ait/articles/1907/12/news019.html
Python公式サイトにあるドキュメント「オブジェクト、値、および型」では、Pythonにおけるオブジェクトとは「データを抽象的に表したもの」と表現されている。
つまり、Pythonで書いたプログラムが操作したり、処理したりするデータのことを「オブジェクト」という。
型 説明 int 「整数」を表現する型 float 「浮動小数点数」を表現する型 bool TrueかFalseのいずれかの値を取り、真偽値(条件が成立しているかどうか)を表現する型 str Unicodeのコードポイント値を任意の数だけ並べた「文字列」を表現する型(変更不可能) list 任意の型の要素を任意の数だけ並べた「リスト」を表現する型(変更可能) tuple 任意の型の要素を任意の数だけ並べた「タプル」を表現する型(変更不可能) dict キーと値の組からなる要素を任意の数だけ並べた「辞書」を表現する型(変更可能) set/frozenset 任意の型の要素を任意の数だけ並べた順序のない「集合」を表現する型(setは変更可能。frozensetは変更不可能) function 「関数」を表現する型 module 「モジュール」や「パッケージ」を表現する型
cf. 3. データモデル — Python 3.11.4 ドキュメント
https://docs.python.org/ja/3/reference/datamodel.html#objects-values-and-types
Python における オブジェクト (object) とは、データを抽象的に表したものです。
Python プログラムにおけるデータは全て、オブジェクトまたはオブジェクト間の関係として表されます。
(ある意味では、プログラムコードもまたオブジェクトとして表されます。これはフォン・ノイマン: Von Neumann の "プログラム記憶方式コンピュータ: stored program computer" のモデルに適合します。)
要するにPythonのプログラムの中で処理(操作)できる対象すべてがデータであり、なおかつオブジェクトである」ということらしい。
上記の型の表を見ると、Pythonには「function」という関数オブジェクトもあるので、関数それ自体を1つのデータとして扱うことも可能。
第一級オブジェクト(ファーストクラスオブジェクト、first-class object)は、あるプログラミング言語において、たとえば生成、代入、演算、(引数・戻り値としての)受け渡しといったその言語における基本的な操作を制限なしに使用できる対象のことである。
ここで「オブジェクト」とは広く対象物・客体を意味し、必ずしもオブジェクト指向プログラミングにおけるオブジェクトを意味しない。
この言葉は1960年代にクリストファー・ストレイチーによって「functions as first-class citizens」という文脈で初めて使われた。
決まった順番に並んだ値で構成される情報は、Pythonでは リストオブジェクト で表現します。
リストオブジェクトは、他のオブジェクトを 要素 として登録できるオブジェクトで、他のプログラミング言語では配列などと呼ばれることもあります。
リストオブジェクトは、次のように 角カッコ [ と ] で作成します。
[要素1, 要素2, ...]
要素の参照
リストオブジェクトに登録した要素は、次のような式で参照できます。
インデックス(添字)
インデックス(添字)は、1から始まるのではなく、0から始まる点に注意が必要。
要素の挿入
要素の置き換え
登録済みの要素を別の要素に置き換えるときは、次のように記述します。
要素の削除
リストオブジェクトに登録されている要素を削除するときには、del 文を使います。
リストオブジェクトから、指定したインデックスの要素を削除します。
del 文で指定できる要素のインデックスは、要素の置き換え と同じように、リストオブジェクトの 最後のインデックス値 までです。
リストオブジェクトの要素数を教えてくれる、len() という関数があります
関数 len() は、引数にリストオブジェクトを指定すると、その要素数を返してくれる関数です。
4
リストの要素を順番に参照する処理は非常によく行われるため、もっと簡単に書けるように、for 文 という、専用の文法が用意されています。
for文の書き方
処理1
処理2
...
for 文は、リストオブジェクト から要素を一つずつ順番に取り出し、それぞれの要素ごとに、for 文に続けて記述した処理を、一度ずつ実行します。
6. while文による繰り返し
https://www.python.jp/train/loop/index.html
以下、気になったところ。
条件式と分岐 で、コンピュータプログラムの三つの制御構造を紹介しました。
while文
while 条件式:
処理1
処理2
...
whileループを使ったプログラムは、書き間違えると永久にループを実行し続ける事になってしまいます。
これが有名な「無限ループ」というやつですね。
Colabでは、こういったプログラムを実行して終了できなくなってしまったら、実行中のセルの左側にあるボタンをクリックすると、中断できます。
while 文によるループは、指定した条件式が False になると、ループを終了しますが、それ以外にも、ループの途中で break 文を実行すると、ループを抜け出せます。
確かに「代入」の記号として「=」を使ってしまったのは、初心者に混乱をもたらす原因にもなるので、失敗だったのではないだろうか?と思う。
個人的には、リスト内包表記で値を取り出すときに使われる矢印みたいな記号(「<-」)を、変数に値を代入/束縛するときの記号として採用すべきだったのではないかと思う。(内包表記の方は「<--」にする等、違う記号にする工夫をすればOK)
ここでは、とりあえず数学の等価の「=」と、プログラミングの代入の「=」は違う、ということを理解しておけばOK
中断と継続のどちらを指定した方が、反復を書きやすいかで選べばOK。
ところで、「counter」とか「i」とか、反復している間に回数などを記録しておく変数は、関数型プログラミングではどうなっているのだろうか?
関数型プログラミングでは、「再帰」という仕組みで反復を書ける。
再帰で反復している間、途中の計算結果を保持する方法として、「アキュムレーター」(塁算機)という機能が用意されている関数型プログラミング言語が多い。
アキュムレーターを使うと、Pythonのカウンターと同じようなことが関数型でもできるようになっている。
関数型プログラミングでは再帰で反復を行うために、いろいろな工夫や機能があるので、後々学ぶときに改めて学ぼう。
cf. 再帰を末尾再帰に変換する基本ステップ - Qiita
https://qiita.com/necojackarc/items/0aa2e35147da6a2c702a
5. ブール型と論理演算子
https://www.python.jp/train/logical_oper/index.html
以下、気になったところ。
ブール型 は True か False どちらかの値をとり、True と False は、それぞれ 真 と 偽 を意味します。
一つの条件式だけでなく、複数の条件を組み合わせた、複雑なルールもプログラムとして記述できます。
このように、複数の条件を組み合わせて、条件を判定する演算子を、論理演算子(またはブール演算子) と言います。
1. and 演算子
2. or 演算子
3. not 演算子
以下に、この3つの論理演算子の説明が続くのだが、説明見てみるとベン図の説明がなかった。
中学校や高校の数学で、「集合」や「ベン図」の書き方などを習ったはずなので、論理演算子の働きについては図解で示した方が分かりやすいだろう。
ベン図 - Wikipedia
ベン図(ベンず、もしくはヴェン図、英: Venn diagram)とは、複数の集合の関係や、集合の範囲を視覚的に図式化したものである。
イギリスの数学者ジョン・ベン (John Venn) によって考え出された。
論理演算をベン図で表すことがある。
ベン図は本来は集合についての関係を表すもので、論理演算に対してベン図を用いるのは本来の使い方ではないが、現実には、集合代数と論理演算がブール代数として等価であることから、論理演算を視覚的にわかりやすく表現する手法としてしばしばベン図が用いられる。
cf. 集合(和集合/積集合/否定)とベン図とは?|ITパスポート試験無料教材 | ぽんぱす
https://45kaku.com/itpassport_text_33-04/
↑このWebページの「和集合/積集合/否定」という項目の図を参考にすれば、「and」「or」「not」がどうなっているかよく分かる。
and 演算子は、左右に指定された値の両方が True の場合、True を返します。 どちらか一方でも False なら、and 演算子の結果も False となります。
or 演算子は、左右に指定された値のどちらか一方、または両方が True の場合、True を返します。 両方が False なら、or 演算子も False となります。
not 演算子は、指定した式の値を 反転 し、値が True(真) なら False(偽)を返し、False(偽)ならTrue(真) を返す演算子です。
4. 条件式と分岐
https://www.python.jp/train/if_condition/index.html
以下、気になったところ。
コンピュータのプログラムは、どんなに複雑そうにみえるプログラムでも、細かく分解すれば次の3つの単純な構造の組み合わせで構成されています。
3. 条件が満たされている間、処理を繰り返す 反復処理
重要なことがサラッと書かれている。
これは一般的に「構造化プログラミング」と呼ばれている考え方のことだ。
構造化プログラミング(こうぞうかプログラミング、英: structured programming)は、コンピュータプログラムの処理手順の明瞭化、平易化、判読性向上を目的にしたプログラミング手法である。
一般的には順接、分岐、反復の三種の制御構造(control structures)によって処理の流れを記述することと認識されている。
制御構造は制御構文、構造化文(structured statement)、制御フロー文(control flow statement)とも呼ばれる。
また、プログラムを任意に分割した部分プログラム(サブルーチンとコードブロック)の階層的な組み合わせによるプログラムの構造化も指している。
このプログラミング手法の普及に貢献したのは、1968年の計算機科学者エドガー・ダイクストラによるACM機関紙への投書「Go To Statement Considered Harmful」と言われている。
プログラムを構成する要素は、(1)データと(2)処理であり、構造化プログラミングは、このうちの(2)処理に関する話という位置付けになる。
手続型プログラミング(命令型プログラミングの一種)では、処理を
後で学ぶ関数型プログラミングでも、この3つと同じことができる動作が登場する。
参考までに手続型と関数型の基本動作について、対応関係を押さえておこう。
手続型 | 関数型 | 動作 |
順接 | 合成 | 処理をつなげていく |
分岐 | パターンマッチ | 処理を場合分けする |
反復 | 再帰 | 処理を繰り返す |
構造化プログラミングの仕組みは、文字でゴチャゴチャ説明されるよりも、目で図解を見た方が早いと思う。
Googleの画像検索で「構造化プログラミング」を検索して、分かりやすそうな図解を探してみよう。
https://monoist.itmedia.co.jp/mn/articles/1008/17/news092.html
↑ちなみに、図解で出てくる流れ図みたいなのは「フローチャート図」と呼ばれていて、プログラムの構造を紙に書くときよく使われる書式である。
値を比べる方法が紹介されている。
はてなアノニマスダイアリー(通称:増田)で記事を書く時、一部の文字はエスケープされて元々の文字を表示できない。
& → &
< → <
> → >
演算子 | 条件 |
a < b | a は b より小さい |
a <= b | a は b と等しいか小さい |
a > b | a は b より大きい |
a >= b | a は b と等しいか大きい |
a == b | a と b は等しい |
a != b | a と b は等しくない |
真か偽かを示すデータの種類として、ブール型という新しい型が紹介されていた。
ブーリアン型(ブーリアンがた、英: Boolean datatype)は、真理値の「真 = true」と「偽 = false」という2値をとるデータ型である。
ブーリアン、ブール型、論理型(logical datatype)などともいう。
2種類の値を持つ列挙型とも、2進で1ケタすなわち1ビットの整数型とも、見ることもできる。
また、各種ブール演算を行うことができ、論理積 (AND、&、*)、論理和 (OR、|、+)、排他的論理和 (XOR、NEQV、^)、同値 (EQV、=、==)、非同値 (NEQV、<>、!=)、否定 (NOT、~、!) などの操作が可能である。
ブール代数(ブールだいすう、英: boolean algebra)またはブール束(ブールそく、英: boolean lattice)とは、ジョージ・ブールが19世紀中頃に考案した代数系の一つである。
ブール代数の研究は束の理論が築かれるひとつの契機ともなった。
ブール論理の演算はブール代数の一例であり、現実の応用例としては、組み合わせ回路(論理回路)はブール代数の式で表現できる。
cf. 「Boolean」の翻訳を「論理型」とすべき3の理由 – Kenchant
https://senooken.jp/post/2016/03/21/2571/
プログラミング言語やHTMLのようなマークアップ言語などプログラミングに関する文書を呼んでいるとboolean(ブーリアン)という単語に出くわす。
Booleanとは真(True)と偽(False)という2値をとるデータ型のことである。
情報元によって、このBooleanの翻訳や呼び方が異なっている。以下のように呼ばれたり訳され、最後に「型」や「値」がついたりつかなかったりする。
このBooleanの呼び方としてどの訳し方がよいか気になったので調べた。
その理由は以下3点だ。
文字列同士の比較では、人間の感覚とはことなった比較結果となる場合があるので注意してください。
一般的には、半角の数字やアルファベットの比較は、次のような結果になり、安心して利用できます。
1. 数字は、文字の0が最小、9が最大(0 < 1 < 2 < ... < 9)
2. アルファベットでは、a が最小、z が最大 (a < b < c < ... < z)
3. 大文字は小文字より小さい (A < a, B < b, ...)
文字列の大小の比較に、ユニコードという文字一覧表を使っており、その文字コードの大小で比較しているという種明かしをしないと意味が分からないと思う。
種明かしをしていない、という意味で、この説明もあまり良くないと思った。
cf. python 文字列の比較 | Hello, Pygineer
文字列 (str のインスタンス) の比較は、文字の Unicode のコードポイントの数としての値 (組み込み関数 ord() の返り値) を使った辞書式順序で行われます。
抽象文字のレベルで (つまり、人間にとって直感的な方法で) 文字列を比較するには unicodedata.normalize() を使ってください。
文字列の比較は、一致か不一致かを調べる場合が多いと思うので、大小の比較はあまり気にしなくても良いような気がする。
if 条件式:
処理1
処理2
...
Pythonの書き方を特徴付けている1つが、この「インデント記法」
if 文の書き方
条件式の後ろに、: 記号が必要ですので、忘れないように気をつけてください。
if 条件式: の次の行から、条件式が True となった場合に実行する処理を記述します。
インデント
条件が満たされたときに実行する処理は、行の先頭に スペース文字 を 4文字 入力してから記述します。
if a == 100:
処理1
処理2
処理3
^^^^
関数型プログラミング言語「Haskell」でも、Pythonのインデントと似た「レイアウトルール」「オフサイドルール」という記法が用意されている。
https://www.tohoho-web.com/ex/haskell.html#layout
Python の様にインデントを用いることで、{ ... } ブロックの { と } を省略することができます。
main = do
話を戻すと、Pythonではインデント(字下げ)が文法的に意味を持っており、省略できないということ。
Pythonでは、1つのブロック(コードの塊)をインデントの位置で束ねている。
他のプログラミング言語では、ブロックの開始と終了を表す記号(「{」と「}」など)がよく使われたりするけど、Pythonはその代わりにインデントを使う。
外見は見やすくなるけど、逆に言えばインデントを間違えたら、コードの意味が変わってくるので、長所と短所を両方併せ持った記法とも考えられる。
元々、Pythonは教育用途の言語としたスタートした歴史があるので、可読性を重視しており、誰が書いてもある程度同じようなコードになることが求められている。
その要求に対する答えの1つが、インデント記法ということだったのだろう。
関数型プログラミングの考え方を参考にする場合、if文を使った関数はelse節を省略しないで、Trueの場合でもFalseの場合でも、必ず戻り値を返すように設計しておいた方が良いと思う。
ifも文ではなく式として見るならば、評価した結果を必ず返すようにしておく必要がある。
(副作用の有無に関わらず)TrueでもFalseでも、必ず値を返すようにしておけば、戻り値なし(void)を避けられる。
これは後々、例外処理の書き方などで効いてくるので、Pythonでもif文でelse節を省略しないで書けないか?考える習慣を身につけておきたい。
特になし。
特になし。
この判決は非常に重要なもので、朝日新聞とかが馬鹿みたいに批判しているけど、当然です。
これ、反差別界隈とかジェンダー平等も同じね。実力ではなくマイノリティとか女性というだけで就職できたり、学者になれたり、マスコミの記者になれる。
現に、暇空茜は報道しない。ジャニーズは犯罪者と決めつけて報道する極悪女が存在します。
最高裁判所、大学の入学決定に人種を利用する判決でアファーマティブ・アクションを拒否
6-3のアファーマティブ・アクション意見で、最高裁判所は大学入学の要素として人種を利用することは憲法修正第14条に違反するとの判決を下した。
アンダース・ハグストロム、 ブリアナ・ハーリー、 ビル・ミアーズ、 シャノン・ブリーム、 ヘイリー・チーシン| 著 フォックス・ニュース
SCOTUS積極的差別是正措置判決、判事の間で「激化」:シャノン・ブリーム
主任法務記者シャノン・ブリームが、アファーマティブ・アクションに対する最高裁判所の判決を解き明かします。
米国最高裁判所は木曜日、アファーマティブ・アクションに関する重要な判決を下し、大学入学の要素として人種を利用することは憲法修正第14条の平等保護条項に違反するとして却下した。
ジョン・ロバーツ首席判事は6対3の判決で、多数派意見の中で、「例えば、人種差別を克服した学生への利益は、その学生の勇気と決意と結び付けられなければならない」と述べた。
「あるいは、その伝統や文化がリーダーシップの役割を引き受けたり、特定の目標を達成したりする動機となった学生への利益は、その学生が大学に貢献する独自の能力と結び付けられている必要があります。言い換えれば、学生は以下の基準に基づいて扱われなければなりません」人種に基づくものではなく、個人としての経験だ」と意見書には書かれている。
「多くの大学は、あまりにも長い間、その逆のことを行ってきました。そしてそうすることで、個人のアイデンティティの試金石は、乗り越えた課題、培ったスキル、学んだ教訓ではなく、肌の色であるという誤った結論を下してしまいました。歴史はその選択を容認していない」と意見書は述べている。
ロバーツ判事にはクラレンス・トーマス判事、サミュエル・アリト判事、ニール・ゴーサッチ判事、ブレット・カバノー判事、エイミー・コニー・バレット判事も加わった。
ソニア・ソトマイヨール判事が主な反対意見を書き、エレナ・ケーガン判事と、ハーバード大学の監督委員会での以前の役割を理由にハーバード大学訴訟から身を引いたケタンジ・ブラウン・ジャクソン判事も一部参加した。
バイデン大統領は木曜日午後12時30分にこの決定についてコメントを発表する予定だ。
判事らは、私立のハーバード大学と公立のノースカロライナ大学が教室の定員をどのように決定するかについて、2つの別々の法的異議を申し立てた。
これらの有名な学校は、自分たちの基準には、将来のリーダーのために堅牢で知的に多様性のあるキャンパスを推進するという、裁判所によって数十年にわたって支持されてきた、より大きな社会的目標があると主張している。
しかし、アジア系アメリカ人の学生連合は、この基準は「人種的ペナルティー」で差別されており、多くの黒人やヒスパニック系の学生よりも選択的に高い基準を課していると主張している。
学生活動団体「Students for Fair Admissions」は、ハーバード大学とノースカロライナ大学の両大学に対して訴訟を起こした。同団体は当初、2014年に公民権法第6編に違反したとしてハーバード大学を告訴したが、同法は「連邦資金やその他の連邦財政援助を受けるプログラムや活動において、人種、肌の色、国籍に基づく差別を禁止する」と定めている。
ハーバード大学に対する訴状では、ハーバード大学の慣行がアジア系アメリカ人の学生に不利益を与え、人種中立的な慣行を採用できなかったと主張している。ノースカロライナ州の訴訟では、人種に基づいていない慣行が学校の学力を低下させたり、キャンパスの多様性から得られる利益に悪影響を及ぼしたりすることを示さずに、大学が非人種に基づく慣行の使用を拒否できるかどうかという問題が提起された。
判事がハーバード大学、UNC最高裁判所でアファーマティブ・アクションをめぐる議論を審理
米国第一巡回区控訴裁判所は、地方裁判所の裁判員裁判の結果を支持し、ハーバード大学に有利な判決を下していた。地方裁判所は、ハーバード大学に対する証拠は決定的ではなく、「観察された差別」は少数のアジア系アメリカ人学生にのみ影響を与えたと述べた。SFFAはこの訴訟において資格を有さないとの判決を下した。
UNCの訴訟では、連邦地方裁判所は同校の入学慣行は厳しい監視に耐えたとして、同校に有利な判決を下した。
ロバーツ氏は多数派意見の中で、ハーバード大学とUNCの入学プログラムはいずれも「人種の利用を正当化する十分に焦点を絞った測定可能な目標が欠けており、人種を否定的な形で採用せざるを得ず、人種的な固定観念を伴い、有意義な最終目標を欠いている」と述べた。
「我々は入学プログラムがそのような形で機能することをこれまで一度も許可したことがないし、今日もそうするつもりはない」と同氏は述べた。
クラレンス・トーマス判事は多数意見に同意しながらも、自身の考えについては別の同意書を書いた。
同氏は、「今回の決定は、大学の入学政策をありのままに見るものだ。入学するクラスに特定の人種を確実に混入させるよう設計された、舵のない人種に基づく優先政策である。これらの政策は、色盲の憲法と国家の平等に反するものである」と述べた。端的に言えば、それらは明白に、そして大胆に憲法違反である。」
「私は、私の人種と差別に苦しむすべての人々に降りかかった社会的、経済的惨状を痛感しているが、この国が独立宣言と憲法で明確に宣言された原則を遵守するよう、私は絶え間ない希望を抱いている。米国:すべての人間は平等に生まれ、平等の国民であり、法の下で平等に扱われなければならない」とトーマスは書いた。
アファーマティブ・アクションの訴訟は、ジョン・ロバーツ首席判事とサミュエル・アリト判事がハーバード大学の弁護士セス・ワックスマン氏を激しく非難するなど、この期間に最高裁判所の建物内で行われた中で最も活発な法廷討論の一つを引き起こした。
アリト氏はワックスマン氏に、アジア系アメリカ人の学生が他の人種に比べて出願書類の個人スコアがいつも低いのはなぜかと尋ねた。ワックスマンは判事の質問を迂回して話したため、アリトは弁護士に不満を抱いた。
アリト氏は「アジア人に与えられる個人スコアの差についてはまだ説明を聞いていない」と語った。
その後、ワックスマンはロバーツと緊迫したやりとりを繰り広げた。判事は、ロバーツによれば人種は何らかの影響を与えるに違いないが、そうでなければ人種は考慮に入れられないのに、なぜワックスマンが入学決定の要素として人種を軽視したのかを尋ねた。
ワックスマン氏は、「ハーバード・ラドクリフ管弦楽団がオーボエ奏者を必要としている年に…オーボエ奏者であること」と同じように、「一部の優秀な応募者にとって」人種は決定的なものだったと認めた。
「私たちはオーボエ奏者を巡って内戦を戦ったわけではない」とロバーツ氏は言い返した。「私たちは人種差別をなくすために内戦を戦ったのです。」
オコナー率いる法廷多数派は、少数派のロースクール志願者に対するミシガン大学のアファーマティブ・アクション政策を支持しながら、次のように警告した:「我々は、今から25年後には、利益を促進するために人種的嗜好を利用する必要はなくなると予想している」本日承認されました。」
19 年が経ち、6 対 3 の保守派多数派が現在、大学が競争入学プロセスの一部として人種を利用することを阻止しています。
FOXニュースのタイラー・オルソン氏がこのレポートに寄稿した。
Makes sense. So, does this also mean "AA" in employment, handouts, government loans, and other areas of life are also unconstitutional? (And yes, corporate America says there are no race-based quotas for hiring in large meetings but then set up individual manager & HR meetings where hiring is analyzed for the manager's team and managers are told to focus on certain groups based on race.)
理にかなっています。 では、これは、雇用、給付金、政府融資、その他の生活分野における「AA」も憲法違反ということになるのでしょうか? (そう、アメリカ企業は、大規模な会議では採用に人種に基づくノルマはないと言っているが、個別のマネージャーと人事会議を設定し、そこでマネージャーのチームの採用が分析され、マネージャーは人種に基づいて特定のグループに焦点を当てるように指示されている。)
That's not true. There are plenty of examples on Linkedin and other public forums of corporations hiring for a specific race
それは真実ではない。 Linkedin やその他の公開フォーラムには、特定の人種向けに企業を雇用する例がたくさんあります。
これジョークね。
This is a fantastically accurate ruling. It is about time the court affirms what is basic common sense. Judging anyone (positively or negatively) based on race IS racist. The simple statement "we want to make sure we have diversity", goes in with the racist assumption that race defines the diversity of who you are. Every individual is diverse. Their life experience is unique. There are some shared experiences for individuals of certain similar upbringing, but the assumption that a certain "race" brings "diversity" IS racist.
これは驚くほど正確な判決だ。 そろそろ法廷が基本的な常識を肯定する時期が来ている。 人種に基づいて誰かを(肯定的または否定的に)判断することは人種差別主義者です。 「私たちは多様性を確保したいと考えています」という単純な発言は、人種によって人間の多様性が決まるという人種差別的な思い込みと結びついています。 すべての個人は多様です。 彼らの人生経験はユニークです。 特定の似たような生い立ちを持った個人の間で共有される経験はいくつかありますが、特定の「人種」が「多様性」をもたらすという仮定は人種差別的です。
フランス暴動:数百人の警官が負傷、数千人のデモ参加者が銃撃で逮捕される中、知っておくべきこと
抗議活動により警察官270人が負傷、2,000人以上の参加者が逮捕された
交通停止中に 17歳の少年が死亡したことを受けて、暴動がパリ郊外を襲い、すぐにフランス全土の他の町や都市に広がったが、なぜ状況はここまで制御不能になったのだろうか?
ヘンリー・ジャクソン協会の共同創設者で事務局長のアラン・メンドーサ氏は、「そこで起きていることは、国内のイスラム系移民人口の統合に失敗した結果だ」とフォックスニュースデジタルに語った。
「伝説のフランスは、原住民と同じ進歩や成功の機会を持たないゲットー化されたコミュニティの日常生活の現実からは遠く離れている」と彼は語った。「フランスの忘れ去られたコミュニティは、もはや忘れ去られたままではないことを示しています。」
「バンリューで感じられたくすぶる怒りは、爆発するための火花を必要としていましたが、暴動や略奪という形での無秩序を常に歓迎してきたフランス社会の無秩序な緊張によって今利用されています。」
5日間の暴動期間中、全国で合計2,000人以上が逮捕された。フランスのエマニュエル・マクロン大統領も暴動を受けて予定していたドイツ訪問を延期した。フランス内務大臣は土曜日、逮捕者の平均年齢は17歳だったと発表した。
統一SGP警察FO組合のグレゴリー・ジョロン事務局長は、警察は「フランス国内のこれほど多くの都市で、このような都市暴力は18年間初めて見た」と語った。
警察は火曜日の朝、パリ郊外のナンテールで、ネーヘル・Mという名前だけが判明したこの少年を逮捕した。ネヘルさんは配送ドライバーとして働いていたが、警察官2人と話すために車を止め、警察官が彼の車に近づき、交通ルールを破ったと説明したと検察官は述べた。
警察の報告書とソーシャルメディア上で拡散されたビデオの矛盾もあり、事件の正確なきっかけは依然として不明である。フランス24紙によると、警察はネヘル容疑者が警官の1人に向かって車を運転したと発表しており、ビデオには警官の1人が彼に武器を向けて「頭に銃弾を受けるぞ」と言っている様子が映っている。
ネーヘルは黄色のメルセデスを運転した。車には2人が乗っていたが、当時彼は無免許だった。伝えられるところによると、彼は以前の交通停止に従わなかったために拘留されており、9月に少年法廷に出廷する予定だった。
その後、警官はネーヘルを撃ったとみられるが、車はわずかな距離を走行して突然発進し、ネーヘルはその場で死亡した。警察は加害警察官を拘留し、金曜日に容疑をかけて自発的過失致死の容疑で捜査を開始した。
ロイター通信によると、警察官の弁護士ローラン・フランク・リエナール氏はフランスのテレビとのインタビューで、依頼人は運転手の脚を狙ったが、車が発進する際に衝突し、胸に向けて発砲したと述べた。報告書によると、同容疑者は「明らかに(警察官は)運転手を殺したくなかった」と述べたという。
家族の弁護士によると、ネーヘルさんはアルジェリア系とモロッコ系で、犯罪歴はなかった。彼は地元のラグビークラブでプレーし、貧困地域の人々が見習いを受けるのを支援することを目的としたプログラムに参加していた。ネーヘルは電気技師になるつもりでした。
マクロン大統領はこの危機に対してさまざまな反応を示しており、当初は銃撃事件を「不可解」で「許せない」と表現していたが、その後抗議活動を非難し、暴力が増大している原因はソーシャルメディアからビデオゲームに至るまであらゆるものにあると非難した。
マクロン氏は、TikTokやSnapchatなどのソーシャルメディアプラットフォームが、特にネヘルさんを射殺した警察官の個人情報がプラットフォーム上で出回った後、暴動をあおるのに役立った、と主張した。同氏は、政府がソーシャルメディアサイトと協力して「最も機密性の高いコンテンツ」を削除し、「無秩序を呼びかけたり、暴力を激化させたりする」ユーザーを特定すると述べた。マクロン大統領はまた、国内の法執行機関内に組織的な人種差別があったことを否定した。
ネーヘルさんの母親は警察が「アラブ人の顔」に暴力的に対応したと非難し、一部の観察者らによると、大規模でサービスが行き届いていない北アフリカ系移民(主にイスラム教徒)と警察との間に潜在的な緊張があることに注目を集めた。
ネーヘルさんには犯罪歴はなかったが、2021年以来5回警察による検査を受けており、停止命令に従うことを拒否していた。停車のほとんどは、無免許運転や無保険、虚偽のナンバープレートの使用などでした。
このビデオと、隠蔽工作のような印象を与えた警察の矛盾した証言は、一部のフランス国民の怒りを引き起こし、最初のデモ参加者につながった。ニューヨーク・タイムズ紙の報道によると、デモ参加者らは、ネーヘルさんの死はフランスの法執行機関の根底にある人種差別の表れだと主張している。
事件以来、デモ参加者らは警察と激しく衝突しており、デモ参加者が警察官に石や花火を投げつけたり、車両やゴミに火をつけたり、建物を汚損したりするなどして逮捕者が増加している。
最初の抗議活動はナンテールで発生したが、3日目までにパリ本土、マルセイユ、リヨン、トゥールーズ、ストラスブール、リールなど他の町や都市に広がった。
マルセイユの暴徒らは銃器店を強盗し、狩猟用ライフルを奪ったが弾薬は受け取らなかった。
土曜日、マクロン大統領は、抗議活動と暴力的衝突が拡大し続ける中、物議を醸しているエルトン・ジョンのコンサートに出席したにもかかわらず、国内の危機に対処するためドイツへの旅行をキャンセルした。
彼は抗議活動への対処方法を決定するために国会の緊急会議を招集し、最終的に抗議活動の鎮圧に4万5000人の警官と装甲車両を投入することを決定した。当初、法執行機関は約9,000人の警察官のみを配置していた。
土曜夜の時点でロイター通信は、マルセイユやニースなど国内各地で散発的な暴力が勃発しているものの、状況は落ち着いていると報じた。来年のオリンピック開催地であるパリでは、ソーシャルメディアが抗議活動参加者にシャンゼリゼ通りに集まるよう呼びかけたとされ、警察はシャンゼリゼ通りの警備に警察官を増員した。
フランスのジェラルド・ダルマナン内務大臣は、テレビニュースチャンネルで 政府が 非常事態を宣言するかどうかとの質問に対し、「端的に言えば、いかなる仮説も排除するつもりはなく、選択します。今夜以降に共和国大統領の判断が分かるだろう」と述べた。
BIDEN'S AMBITIOUS EV PLANS COULD MAKE US MORE DEPENDENT ON CHINESE SUPPLY CHAINS, EXPERTS WARN
アメリカ人の59%が2035年までにガソリン車を段階的に廃止することに反対、21%がそのような政策の見通しに興奮している
調査によると、アメリカ人の59%が2035年までにガソリン車とトラックを段階的に廃止することに反対しており、もしアメリカがそのような政策を進めたとしても興奮すると思う人はわずか21%だという。過去2年間でアメリカ国民はガソリン車の段階的廃止への反対を強めており、2021年4月には51%が反対しており、現在反対している人の割合より8%少ない。
ピュー研究所の報告書は、「この期間にわたって、ガソリン車とトラックの段階的廃止に対する支持は民主党、共和党双方の間で高まっている」と述べている。
さらに世論調査の結果、共和党は2035年までにガソリン車を段階的に廃止することに84%対16%の差で反対しているのに対し、民主党は64%対35%の差で賛成していることが示された。
また、共和党員の73%がこの政策に憤慨しているのに対し、民主党員のわずか20%が同じように感じていることも明らかになった。これに対し、共和党員の7%、民主党員の37%が段階的縮小に興奮していると回答した。
そして米国人は、消費者が急速に電気自動車に乗り換えるのを支援するのに必要なインフラを米国が構築できるかどうかについては広く懐疑的だ。米国の成人のうち、それが可能であると非常にまたは非常に自信を持っているのはわずか 17%、30% がある程度自信を持っており、53% は自信がありません。
この調査結果は、バイデン政権と民主党主導のさまざまな州が電気自動車の導入を促進し、場合によっては将来のガソリン車の販売を禁止する規制を進め続ける中で発表された。
ホワイトハウスは4月、「自動車とトラックのメーカーは、輸送の未来は電気であると明言している。市場は動いている」と述べた。「自動車愛好家であり、自称自動車マニアとして、バイデン大統領は今この瞬間を捉えている。」
この声明は、環境保護庁(EPA)がこれまでで最も積極的な連邦政府のテールパイプ排出量を提案した後に発表された。
ホワイトハウスは、これが最終決定され実施されれば、2032年までに新車購入のセダン、クロスオーバー、SUV、小型トラックのなんと67%が電動化される可能性があると予測した。さらに、それまでに購入されるバスとゴミ収集車の最大 50%、短距離貨物トラクターの 35%、長距離貨物トラクターの 25% が電動化される可能性があります。
「バイデン政権は人々にEVの購入を強制するために、あらゆる連邦規則を曲げようとしている」と競争力企業研究所エネルギー・環境センター所長のマイロン・エベル氏は当時述べた。「ドライバーが自分で選んだ車を購入できる市場はまだ存在するが、政府の強制によりその選択肢は急速に制限されつつある。」
2022年3月、EPAは大気浄化法に基づくカリフォルニア州の権限を回復し、独自の排出基準と電気自動車の販売義務を実施し、他の州がカリフォルニア州の規則を採用することを許可した。この動きは、トランプ政権が連邦規則に矛盾する独自の基準を追求する州の権限を剥奪したことを受けて行われた。
そして8月、州の有力な環境当局であるカリフォルニア大気資源委員会は、年間自動車販売台数で全米トップの同州で購入するすべての自動車を2035年までにゼロエミッションにすることを義務付ける規制を承認した。
(以下略)
真のスコットランド人論法(しんのスコットランドじんろんぽう、英語: No true Scotsman)、または純粋さに訴える論証(英語: appeal to purity)は、 非形式的誤謬のひとつである。普遍汎化に対する反例を提出されたとき、トートロジーを用いて反例を除外することで主張を防衛しようとする行為をさす[1] [2] [3]。普遍汎化を放棄したり反例を否定する証拠を提供したりせず、客観的な基準の代わりにレトリックを用いて汎化を修正し定義上その特定の反例を含まないようにする[4]。このレトリックは「真の、純粋な、正真正銘の、真正の、本物の」など感情に訴えかけるだけで本質的な意味のない純粋さの形容という形をとる[5]
例
哲学教授のブラッドリー・ダウデン(英語版)は、反駁された汎化の試みに対する「アドホックな救助」としてこの誤謬を説明している[1]。以下はこの誤謬の簡略化された一例である[6]。
B: 「私の叔父はスコットランド人だけど、粥に砂糖を入れていたよ。」
A: 「でも、真のスコットランド人は粥に砂糖を入れないんだよ。(But no true Scotsman puts sugar on his porridge.)」
He's going to pay.
He's not getting let off the hook.
He's dead meat.
He's a dead man.
He's dead to me.
I'll never forgive him* <(使われ過ぎだが場合によっては適切)
Unacceptable*
How dare you XX*
"won't allow/permit"的な側面がある「許さない」には、"I won't stand for this!"が良い
その他の翻訳例
"I won't forgive you for barging in on ruru's house."
↓
修正案:“You can’t just barge into Ruru’s house, you know.”
子供に言い聞かせるような響きだが、前者よりは硬くなく、意地悪な響きもない。
いい感じの雰囲気のシーンなので、前者は合わない。
↓
Meaning: I accept your apology. But I won’t forgive or forget. Bye ✌️
"If you don't come back... I'll never forgive you."
「戻ってこなかったら……許さない」
"We'll never forgive you for kidnapping Friend!"
「仲間を連れ去るなんて許さない!」
"Eat my cookie and I'll never forgive you!"
↑一方、「戻ってこなかったら許さない」については、「死んだら許さない」という意味なら"forgive"を使うかもしれないという意見もある。というのは話者が"allow"できるわけではないから。
↑ということは、以下の場合は「死んだら許さない」という意味なので"forgive"のままで良い?
「私の夫にあなたの命まで背負わせたら、許さないから」(ナルト)
“If you make Naruto be burdened with even your life, I will not forgive you.”
"it can't be helped"(仕方ない)は使われ過ぎだが、(a) 一応正しい英語だし、(b) 文脈にも沿っていることが多い(forgiveはそうではないことが多い)。
「なっ何をするだァーッ!ゆるさんッ!」(ジョジョでディオがジョナサンの愛犬ダニーに蹴りを入れた際のセリフ)
↓
"I swear I won't stop until I've scrapped each and every one of you!"
Maxine Waters Says She Will “Never Ever Forgive” Black Americans That Vote for Trump.
"And if you choose to fail us, I say: We will never forgive you."
‘We will not forgive, we will not forget. We will hunt you down and make you pay’
「我々は許さない。忘れない。お前達を追い詰め、捕え、贖わせる」(ISISの攻撃に対するバイデン大統領の言葉)
悟空とバイデンのケースは状況がよく似ているが、悟空は"I won't forgive you!"としか言わなかったので不自然だが、バイデンは"We will hunt you down and make you pay"と報復の意図を付け加えているので自然とのこと。
もしバイデンが"We won't forgive."としか言わなかったら、弱く聞こえるという。「もう昼飯に誘ってやらないぞ」みたいな。
さらに、バイデン自身は戦場で戦闘するのではなく演説台の後ろで何もしない。ただ何かが起こると言っているだけ。その点、眼の前に敵がいて戦わないといけない悟空とは違うらしい。
また、相手が許しを求めていないのにforgiveを使うのは変だという点に関しては、ISISだけでなくアメリカ国民にも語りかけているから良いとのこと。
ちなみに、飲酒運転で子供が轢かれて、ドライバーが全く反省してない場合に"I won't forgive you!"というのは自然とのこと。
一方で、同じく全く反省しないジョーカーにバットマンが同じセリフを言うのはおかしい。バットマンとジョーカーの間には最初から許しなど存在しないから。
(でもバイデンとISISの間にも許しはないのでは?と尋ねたが、答えをもらえなかった。恐らくネイティブにとってもはっきり言語化できない微妙な問題なのだろう)
"Cry all you want, but don't expect me to forgive you."
「泣いても許されると思うなよ」(さよなら私のクラマー)
「一体何に対してFORGIVEするんだ!?FORGIVEが必要だなんて一体どんな罪を犯したんだ!?許さないは"DON'T FORGIVE"じゃない!怒りで自然発火しそうbry;おh;bsfsl」
修正案:"Cry about it all you want, but I'm not letting you guys off the hook."
Fate/stay night UBW 13話 「決別の刻」
凛 :そうね、けど後悔するわよ。私は絶対に降りない。いい、キャスタ
ーを倒してアンタを取り戻す。その時になって謝っても許さないん
だから・・・(That's true. But you'll regret it. I'll never quit. You
hear me?I'll defeat Caster and take you back. And when I do,
ペルソナ4 G 7話 「It's cliche, so what?」
マリ 「記憶探すのも思いで作るのも、絶対に君と一緒だから。君が持ってても
弱虫ペダル RIDE.38 「総北の魂」
坂道「でも、もうボク・・・走れない・・・ここでリタ・・・(I'm dropping—)」
この素晴らしい世界に祝福を 3話
ダ:こんな幼げな少女の下着を公衆の面前ではぎ取るなんて・・・真の
鬼畜だ、許せない!是非とも私を貴方のパーティーに入れてほしい。
(To strip such a young girl of her panties in a public place is truly
savage!I can't let this pass!You must let me join your party!)
カネ「(あの時もヒデはクラスに馴染めない僕に気を遣って声を掛けてきて
くれたんだ・・・いやだ。ヒデが死ぬのは嫌だぁ!そんなの許せない!)
《I don't want Hide・・・to die!I won't・・・I won't let that happen!》」