Pythonのチュートリアルのモバイル自動テストインタビュー

Pythonのチュートリアルのモバイル自動テストインタビュー

1、スーパーとしているのですか?Python2とのpython3の使用では、違いは何ですか?なぜスーパーを使うのか?例を教えてください。

回答:

  • スーパー親クラスのメソッドは、属性を継承します。
  • Python2は、パラメータオブジェクトのクラス名に書き込むために使用された場合、新たなスーパークラスがあるだけで、そう。python3のデフォルトは直接利用でき書いていない、新しいクラスです。
  • スーパーは、コードの再利用性、保守性を向上させることができます使用してください。コードを変更、単に改変。
  • コード例:
class baseClass:
 def test1(self, num): print(num) class sonClass(baseClass): def test2(self): super().test1(num) son = sonClass() son.test1(11)

図2に示すように、最終的な結果を導き出すために、次のコードを読み取ります。

def add(n, i): return n+i def test(): for i in range(4): yield i g = test() for n in [1, 10, 5]: g = (add(n, i) for i in g) print(list(g)) # 结果是 [15, 16, 17, 18] 

:すべての結果式を生成している、それを呼び出すことはありませんが、内部からの値ではありません、それは動作しません。私は私の派生を囲みます。

n = 1
g = (add(n,i) for i in test()) # print(list(g)) # [1, 2, 3, 4] n = 10 g = (add(n,i) for i in (add(n,i) for i in test())) # print(list(g)) # [20, 21, 22, 23] n = 5 g = (add(n,i) for i in (add(n,i) for i in (add(n,i) for i in test()))) g = (add(n,i) for i in (add(n,i) for i in (5,6,7,8))) g = (add(n,i) for i in (10,11,12,13)) g = (15,16,17,18) print(list(g)) # [15, 16, 17, 18] 

図3は、高速なフロントエンドのHTMLやJavaScript、Vueのコードを記述します。

回答:

  • HTML、JavaScriptのコード:
<!DOCTYPE html>
<html lang="en"> <head> <meta charset="utf-8"> </head> <body> <h1 id="title">xxx公司</h1> <p>xxx公司是一家......</p> <div id="mybox"> <h1>{{a}}</h1> <input type="button" value="按我" v-on:click="add()"> </div> <script type="text/javascript" src="public/bundle.js"></script> </body> </html> <script> var title = document.getElementById("title"); title.onclick = function() { alert('我爱xxx公司,祝我面试成功'); } </script>
  • Vueがコーディング:
import Vue from "vue"; new Vue({ el : "#mybox", data : { a : 100 }, methods : { add : function(){ this.a ++; } } }); 

4、L = [1、2、3、11、2、5、3、2、5、3]、コードの単一の行を用いて得られた[11、1、2、3、5]

:リスト(セット(L))

5、L = [1、2、3、4、5]、L:結果は[10]を?

:空のリスト(少し緊張し、その時点で、2つの答えの間でさまよっ「範囲外のインデックス」「空のリスト」とされています)。

6、L = [1、2、3、5、6]、どの星 '12356'?

:この問題は、個人的にピットがあると感じていることに注意してください、リストの要素は、それがない、文字列ではありません  ''.join(L)ここではどのようです:

s = '' 
for i in L: s = s + str(i) print(s) # 12356 print(type(s)) # <class 'str'> 

7、リストや辞書の違いは何ですか?

A:ほとんどのリストやタプルは違いが何であるかを尋ねています。要素を取得するために異なる(1)の方法。インデックス値、キーによって辞書買収により取得したリスト。(2)データ構造及びアルゴリズム異なります。辞書は、検索速度が特に速いです、ハッシュアルゴリズムです。(3)別のメモリを占有します。

8、どのようにプロセスを終了するには?

:(1)メソッドを終了するために呼び出します。(2)サブプロセスpopenのモジュールを使用する方法。ここで続行するのではなく、特定の使用を簡単に使用できます。

9、プロセス、スレッド、違いは何ですか?どのような状況下でのプロセスでは?どのような状況下でのスレッドでは?

:(1)との差:

  • ①アドレス空間と(例えば、ファイルを開くなど)、他のリソースは:相互に独立したプロセスの間に、同じプロセスのスレッド間で共有されます。プロセス内のスレッドは、他のプロセスに表示されません。
  • ②通信:プロセス間通信IPC、スレッドが通信する(例えば、グローバル変数など)のプロセスデータセグメントを読み取り、直接書き込むことができる - 必要援助プロセスの同期と相互排他は、データの一貫性を確保することを意味します。
  • ③スケジューリングとスイッチング:スレッドコンテキストの切り替えは、プロセスのコンテキスト・スイッチよりもはるかに高速です。
  • ④マルチスレッドオペレーティングシステムでは、プロセスは、実行可能エンティティではありません。

(2)使用シナリオ:グローバル変数はすべてのスレッドで共有されているため、このような操作はグローバル変数であり、オブジェクトの同時動作は、私は、スレッドを使用します。

10. ORMは何ですか?なぜORMを使うのか?ORMは何の効果もないのだろうか?

回答:

  • ORMフレームワークは、クラスおよびオブジェクトによってデータテーブルに動作することができ、クラスやデータテーブルに対応することができます。
  • オブジェクトクラスの操作とそれに対応するデータテーブルでは、静的クラスのフィールド名とデータが名対応表は、SQL文を記述する必要がありません属性。
  • ORM別の効果は、クラスの設計に応じて、データベース内のテーブルを生成します。

11は、コードの一部を記述したIPアドレスにpingを実行し、成功、失敗情報を返します。

:(続行しないように、ここで簡単な、具体的な使用方法を使用)を使用するサブプロセスモジュールpopenの方法。

12は、どのようなコンテンツ要求を教え、インタフェーステストプロセスについて話しています。

:(1)工程:試験に合格するかどうかを決定するために、文書のデザインインターフェイスパラメータに応じて、インタフェースのドキュメントを取得し、応答を取得し、応答を解析し、キャリブレーション結果。(2)要求内容:

  1. 封装了各种请求类型,get、post 等;
  2. 以关键字参数的方式,封装了各种请求参数,params、data、headers、token 等;
  3. 封装了响应内容,status_code、json()、cookies、url 等;
  4. session 会话对象,可以跨请求。

おすすめ

転載: www.cnblogs.com/itye/p/11690214.html