Python基本実験1
タスク1:
キーボードから一連のデータを入力し、プログラムを作成して、一連のデータの平均、標準偏差、および中央値を計算します。出力結果は
小数点第1位を保持します。
入力サンプル1
99 98 97 96 95
出力サンプル1
平均:97.0分散:1.6中央値:97.0
入力サンプル2
99 98 97 96 95 94
出力サンプル2
平均:96.5分散:1.9中央値:96.5
"""
# @Time : 2020/4/9
# @Author : JMChen
"""
import numpy as np
list1 = []
list2 = []
list1 = str(input()).split(' ')
for i in list1:
list2.append(int(i))
a = np.array(list2)
print(a)
# avg = sum(list2)/(len(list2))
print('avg:{0:.1f} variance:{1:.1f} median:{2:.1f}'.format(np.average(a), np.std(a), np.median(a)))
タスク2:
プログラミング要件
プログレスバーは、タスクを処理したり、ソフトウェアを実行してユーザーエクスペリエンスを向上させるためにコンピューターで一般的に使用される重要な手段です。
タスクまたはソフトウェアの進行状況をリアルタイムで表示できます。
最も単純な場合、print()関数を使用して、単純な非更新テキストプログレスバーを実装できます。基本的な考え方は、タスクの実行率に応じて
タスク全体を100単位に分割し、N%が実行されるたびにプログレスバーを出力することです。出力の各行には、進行状況のパーセンテージ
、完了したパーツ()と未完了のパーツ(...)を
表す2つの文字、および完了度に続く小さな矢印が含まれます。スタイルは次のとおりです:%10 [****- > ...] ループ及びプリント()関数の設定手順の本体に使用されるキーボードプログレスバー、百出力から前記進行中の出力ルックニートのための3ビットのデータの点最高(100%)よりも、あなたは{使用することができます。 3.0f}パーセントの部分をフォーマットします。入力サンプル1 10 出力サンプル1 %0 [->…] %10 [ ->…]
%20 [ ->…]
%30 [ ->…]
%40 [ ->…]
%50 [ ->… ]
%60 [ ->…]
%70 [ ->…]
%80 [ ->…]
%90 [->…]
%100 [ ************->]
プロセスは終了しました、終了コード0
"""
# @Time : 2020/4/9
# @Author : JMChen
"""
# 非刷新的文本进度条
import time
x = eval(input())
for i in range(x + 1):
a = "**" * i
b = ".." * (x - i)
c = i / x * 100
print("%{:3.0f}[{}->{}]".format(c, a, b))
タスク3:
プログラミングの要件
統計英語の単語の頻度、ファイルText_word_frequency_statistics.txtから記事を読んで、記事の出力が最もある
倍ワードが表示され、同じ数のため、一般的に発生する単語や10回表示され、その後、辞書順のキー行の
順序は、除外する、と、の必要性、私は、私、あなた、で、彼は、彼は、 出力形式は、 "{0:<10} {1:> 5}"です。
ヒント:
最初のステップ:英語の記事から単語を分解して抽出します。同じ単語でも大文字と小文字の形式が異なる場合がありますが、カウントでは
大文字と小文字が区別されません。すべての文字を小文字に変換して、単語頻度統計における元のテキストの大文字小文字の干渉を排除できます。英語の
単語は、スペース、句読点、または特殊記号で区切ることができます。均一な分離方法の場合、さまざまな特殊文字
と句読点をスペースに置き換えてから、単語を抽出できます。
ステップ2:各単語を数える。
パート3:統計という単語を高いものから低いものへと並べ替えます。統計が同じである場合は、キー値で昇順に並べ替えます。
文Text_word_frequency_statistics.txt:
ソルティコーヒー
彼はパーティーで彼女に会った。彼女は抜群だった。多くの人が彼女の後を追いましたが、誰も彼に注意を払いませんでした。パーティーの後、彼は彼女をコーヒーに招待した。彼女は驚いた。無礼に見えないように彼女は一緒に行った。
彼らが素敵な喫茶店に座っていると、彼は緊張して何も言えず、彼女は不快に感じました。突然、彼はウェイターに尋ねました、「塩をくれませんか?コーヒーに入れたいです。」
彼らは彼を見つめた。彼は赤くなったが、塩が来たら、彼はそれを自分のコーヒーに入れて飲んだ。「なぜコーヒーに塩を入れるのですか?」彼は説明しました。「私は小さい頃、海の近くに住んでいました。私は海辺で遊ぶのが好きでした…塩味のコーヒーのように塩味が感じられました。今は飲む度に、子供の頃と故郷を思い出します。それと、まだそこにいる両親がいなくて寂しいです。」
彼女は深く感動した。彼がホームシックであることを認めることができる人は彼の家を愛し、彼の家族を気にしなければなりません。彼は責任があるに違いない。
彼女は遠い故郷、彼女の子供時代、彼女の家族についても話しました。それが彼らのラブストーリーの始まりでした。
彼らは今日まで続けた。彼女は彼が彼女のすべての要件を満たしていることを発見しました。彼は寛容で、親切で、温かく、そして慎重でした。そして、もし塩辛いコーヒーがなければ、彼女は獲物を見逃していたと思います!
それで彼らは結婚し、一緒に幸せに暮らしました。そして彼女が彼のためにコーヒーを作るたびに、彼女は彼がそれを好んだ方法で、いくつかの塩を入れました。
40年後、彼は亡くなり、彼女に次のような手紙を残しました:
私の愛する人、私の生涯の嘘を許してください。私たちが初めてデートしたのを覚えていますか?緊張して砂糖の代わりに塩を頼みました。
変更を求めるのは私には難しかったので、先に進みました。私たちがそれを打つとは思っていませんでした。多くの場合、私はあなたに真実を伝えようとしましたが、それがすべてを台無しにするのではないかと恐れました。
恋人、私は塩辛いコーヒーがまったく好きではない。しかし、それがあなたにとってとても重要だったので、私はそれを楽しむことを学びました。私と一緒にいることは私の最大の幸せでした。二度と生きられたら、一生塩辛いコーヒーを飲まなければならないとしても、また一緒にいられるといいですね。
输出样例1
〜12
コーヒー11
その11
彼女11が
11だった
彼女の8
のための7
塩辛い6
6その
塩5
"""
# @Time : 2020/4/9
# @Author : JMChen
"""
with open('Text_word_frequency_statistics.txt', 'r')as f:
f = f.read().lower()
for ch in '!,".:?;':
f = f.replace(ch, '')
l = f.split()
l.sort()
countDict = {}
for word in l:
if word in ['the', 'and', 'of', 'a', 'i', 'in', 'you', 'my', 'he', 'his']:
continue
else:
countDict[word] = countDict.get(word, 0) + 1
cList = list(countDict.items())
cList.sort(key=lambda x: x[1], reverse=True)
for i in range(10):
w, c = cList[i]
print('{0:<10}{1:>5}'.format(w, c))
注:統計値が同じ場合は、キー値に従って昇順に配置されます。