-
Pythonで浮動小数点数をクランプする方法は?
クランプ機能は、値を特定の範囲に制限します。 Pythonにはそのような関数が組み込まれていません。この関数は次のように作成できます def clamp(num, min_value, max_value): return max(min(num, max_value), min_value) print(clamp(5, 1, 20)) print(clamp(1, 10, 20)) print(clamp(20, 1, 10)) これにより、出力が得られます 5 10 10
-
Pythonでナルシシスト(アームストロング)数を印刷する方法は?
ナルシシスト数を印刷するには、まずその定義を見てみましょう。これは、それぞれが桁数の累乗で累乗された独自の桁の合計である数値です。たとえば、1、153、370はすべてナルシシスト数です。次のコードを実行すると、これらの番号を印刷できます def print_narcissistic_nums(start, end): for i in range(start, end + 1): # Get the digits from the number in a list: digits = list(map(int, str(i)))
-
Pythonで数値からシグナル名を取得するにはどうすればよいですか?
Pythonで数値からシグナル名を取得する簡単な方法はありません。シグナルモジュールを使用して、そのすべての属性を取得できます。次に、このdictを使用して、SIGで始まる変数をフィルタリングし、最後にそれらをサイコロに格納します。たとえば、 例 import signal sig_items = reversed(sorted(signal.__dict__.items())) final = dict((k, v) for v, k in sig_items if v.startswith('SIG') and not v.startswith('SIG_'
-
Pythonで複素数の平方根を見つける方法は?
cmathライブラリを使用して、Pythonで複素数の平方根を見つけることができます。 Pythonのcmathライブラリは、複素数を処理するためのライブラリです。次のように使用して、平方根を見つけることができます- 例 cmathimportsqrtから a = 0.2 + 0.5j print(sqrt(a)) 出力 これにより、出力が得られます (0.6076662244659689+0.4114100635092987j)
-
Pythonで複素数をプロットする方法は?
極座標プロットに複素数をプロットできます。複素数の配列がある場合は、次を使用してプロットできます。 import matplotlib.pyplot as plt import numpy as np cnums = np.arange(5) + 1j * np.arange(6,11) X = [x.real for x in cnums] Y = [x.imag for x in cnums] plt.scatter(X,Y, color='red') plt.show() これにより、複素平面に数値のグラフがプロットされます。
-
Pythonを使用してキース数を見つける方法は?
次のコードを使用して、Pythonで数値がキース数であるかどうかを確認できます- 例 def is_keith_number(n): # Find sum of digits by first getting an array of all digits then adding them c = str(n) a = list(map(int, c)) b = sum(a) # Now check if the number is a keith number &
-
Pythonで文字列内の数字を削除するにはどうすればよいですか?
配列を作成して、文字列内のすべての数字以外の文字を追跡できます。次に、最後に.joinメソッドを使用してこの配列を結合します。 例 my_str = 'qwerty123asdf32' non_digits = [] for c in my_str: if not c.isdigit(): non_digits.append(c) result = ''.join(non_digits) print(result) 出力 これにより出力が得られます qwertyasdf 例 これは、Pytho
-
Python-これをwhileループからforループに変換する方法は?
itertoolsモジュールのusincount()関数は、等間隔の値のイテレータを提供します。この関数は2つのパラメーターを取ります。 startはデフォルトで0で、stepはデフォルトで1です。デフォルトを使用すると、無限のイテレータが生成されます。ブレークを使用してループを終了します。 import itertools percentNumbers = [ ] finish = "n" num = "0" for x in itertools.count() : num = input("enter the m
-
Pythonを使用してユーザーテキストに返信する
if-elif-elseステートメントを使用すると、この問題を解決できます。そして、そのようにするために、指定されたオプションがリストに含まれるまで有効なオプションを要求します。whileループを使用できます。オプションが有効な場合はループを解除し、そうでない場合は繰り返し入力を求めます。 int()メソッドを使用して入力を整数に型キャストする必要があるため、入力を整数として受け取る必要があります。 例 与えられたポイントに従うためにコードをチェックしてください。 print("Come-on in. Need help with any bags?") while T
-
誰かがこのPythonプログラムを修正するのを手伝ってもらえますか?
太字の部分で最初に発生する問題は、インデントされていないブロックが原因です。そこに1つのインデントを入れてください。 2番目の問題は、名前変数が定義されていないことです 以下は修正されたものです- print ("Come-on in. Need help with any bags?") bag=input ('(1) Yes please (2) Nah, thanks (3) Ill get em later TYPE THE NUMBER ONLY') if bag == ('1'): pri
-
Pythonでリスト内の同じ要素を削除するにはどうすればよいですか?
ブロックの外側のreturnステートメントを削除するだけです。それが動作します。また、最後の印刷ステートメントには、remaove_newではなくremove_sameが必要です。 def remove_same(L1, L2): L1_copy = L1[:] for e in L1_copy: if e in L2: L1.remove(e) return
-
Python辞書の値を置き換える方法は?
アクセス演算子[]を使用して、Pythonの変数に辞書の値を割り当てることができます。たとえば、 例 my_dict = { 'foo': 42, 'bar': 12.5 } new_var = my_dict['foo'] print(new_var) 出力 これにより、出力が得られます- 42 この構文を使用して、このキーに関連付けられた値を再割り当てすることもできます。たとえば、 例 my_dict = { 'foo':
-
Python Regexを使用して、特定の文字列で10+1のすべてのパターンを検索します
与えられた文字列で正規表現パターン10+1を見つける必要があります。このために、Pythonで利用可能なreモジュールを使用できます。このパッケージには、検索する正規表現と文字列を受け入れるfind allというメソッドがあります。これにより、その文字列に出現するすべてのパターンが得られます。たとえば、 入力文字列の場合- 10000001 hello world 10011 test100000001test. 出力を取得する必要があります- 10000001 1001 100000001 次のようにreパッケージを使用して実装できます- import re occ = re.find
-
文字列から最大数値を抽出するPython正規表現
正規表現を使用して文字列から最大数値を抽出する最も簡単な方法は、-です。 正規表現モジュールを使用して、文字列からすべての数値を抽出します これらの数値から最大値を見つけます たとえば、入力文字列の場合- この都市には121005人、隣接する都市には1587469人、遠く離れた都市には18775994人がいます。 出力を取得する必要があります- 18775994 \ dは数字を示し、プラス記号は連続する数字の最長の文字列を検索するため、「\d+」正規表現を使用して文字列内のすべての数字を検索できます。次のようにreパッケージを使用して実装できます- import re # Ext
-
大文字で始まる単語の間にスペースを入れるPythonの正規表現
ここで解決しようとしている問題は、CamelCaseを単語を区切るように変換することです。正規表現を使用してこれを直接解決するには、指定された文字列内の大文字のすべての出現箇所を検索し、その前にスペースを置きます。 reモジュールからsubメソッドを使用できます。 たとえば、入力文字列の場合- AReallyLongVariableNameInJava 出力を取得する必要があります- A Really Long Variable Name In Java 「[A-Z]」正規表現を使用してすべての大文字を検索し、それらをスペースとその文字に再度置き換えることができます。次のようにreパッケ
-
Pythonで正規表現を使用してメールアドレスを抽出する
電子メールアドレスは非常に複雑であり、世界中で準拠している標準がないため、正規表現で電子メールを識別するのは困難です。 RFC 5322は、電子メールアドレスの形式を指定します。この形式を使用して、テキストからメールアドレスを抽出します。 たとえば、特定の入力文字列に対して- Hi my name is John and email address is [email protected] and my friend's email is [email protected] 出力を取得する必要があります- [email protected]
-
Pythonで辞書式順序で単語を並べ替える
辞書式順序で単語を並べ替えるということは、単語の最初の文字で最初に並べ替えることを意味します。次に、最初の文字が同じである単語については、言語の辞書(データ構造ではない)と同じように、そのグループ内で2番目の文字で並べ替えます。 Pythonには2つの関数があり、このタイプの順序で並べ替えと並べ替えがあります。これらの各メソッドをいつどのように使用するかを見てみましょう。 インプレースソート:配列/リストをインプレースでソートする場合、つまり現在の構造自体の順序を変更する場合は、sortメソッドを直接使用できます。たとえば、 my_arr = [ "hello", &q
-
文の単語を昇順で並べ替えるPythonプログラム
文の単語を昇順で並べ替えるには、まず、スペースを分割点として文を単語に分割する必要があります。簡単にするために、スペースで分割し、句読点をそこに配置します。 replaceまたはregexを使用してそれを削除することもできます。 文を分割したら、配列をその場で並べ替えるか、並べ替えてから新しい配列を返すかに応じて、sortまたはsortedメソッドを使用して、語彙的に(言語辞書のように)単語を並べ替えることができます。 インプレースソート:配列/リストをインプレースでソートする場合、つまり現在の構造自体の順序を変更する場合は、sortメソッドを直接使用できます。たとえば、 例 sent =
-
PythonでNLTKを使用してストップワードを削除する
コンピューターが自然言語を処理する場合、ユーザーのニーズに一致するドキュメントを選択するのにほとんど価値がないように見えるいくつかの非常に一般的な単語は、語彙から完全に除外されます。これらの単語はストップワードと呼ばれます。 たとえば、入力文を-とすると John is a person who takes care of the people around him. ストップワードの削除後、出力が表示されます- ['John', 'person', 'takes', 'care', 'people',
-
Pythonのstartswith()およびendswidth()関数
Pythonには、Stringクラスにstartswith(string)メソッドがあります。このメソッドは、検索するプレフィックス文字列を受け入れ、文字列オブジェクトで呼び出されます。このメソッドは次の方法で呼び出すことができます- >>> 'hello world'.startswith('hell') True >>> 'hello world'.startswith('nope') False 同様に、指定された文字列の最後で検索するサフィックス文字列を受け入れるメソッドで終了します。