前書き
Python は、退屈なクリスマスを解消するために 1989 年に Uncle Turtle によって書かれたプログラミング言語であり、現在では豊富な標準ライブラリとサードパーティ ライブラリが備わっています。
Python は、Web ウェブサイトやさまざまなネットワーク サービス、システム ツール、スクリプトの開発に適しており、科学計算などのために、他の言語で開発されたモジュールをパッケージ化するための「接着剤」言語として使用できます。
エディターが Python を学習する理由は 3 つあります:
必要なあらゆる種類のデータをクロールするには、Python を学習した方がよいでしょう。
データを分析してマイニングするには、Python を学ぶのもよいでしょう。
楽しくて興味深いことをするには、Python を学ぶのもよいでしょう。
準備
1. Python公式サイトからお好みのバージョンをダウンロードしてインストールします。エディタは最新バージョン3.6.0を使用します。
2. Pythonの統合開発環境であるOpen IDLEは、シンプルですが非常に便利です。 IDLE には、構文を色で強調表示するエディター、デバッグ ツール、Python シェル、および Python 3 のオンライン ドキュメントの完全なセットが含まれています。
hello world
1. IDLE で、print('hello world')
と入力し、Enter キーを押して hello world を出力します。 print('hello world')
,回车,则打印出hello world。
PS:语句末尾加不加分号;
都可以,小编决定不加分号,更简单。
2、使用sublime新建文件hello.py,内容如下:
print('hello world')
在Windows下,shift+右键,在此处打开命令窗口,执行python hello.py
,回车,则打印出hello world。
3、使用sublime新建文件hello.py,内容如下:
#!/usr/bin/env python print('hello world')
在Linux或Mac环境下,可以直接运行脚本。首先添加执行权限chmod a+x hello.py
,然后执行./hello.py
。当然,也可以和Windows一样,使用python hello.py
来执行脚本。
引入模块
1、新建name.py,内容如下:
name='voidking'
2、执行python name.py
。
3、进入python shell模式,执行import name
,print(name.name)
,则打印出voidking。
基础语法
常用函数(print)、数据类型、表达式、变量、条件和循环、函数。和其他语言类似,下面选择一部分展开。
list链表数组
1、定义数组myList = ['Hello', 100, True]
2、输出数组print(myList)
3、输出数组元素print(myList[0])
,print(myList[-1])
4、追加元素到末尾myList.append('voidking')
5、追加元素到头部myList.insert(0,'voidking')
6、删除元素myList.pop()
,myList.pop(0)
7、元素赋值myList[0]='hello666'
tuple固定数组
1、定义数组myTuple = ('Hello', 100, True)
错误定义:myTuple1=(1)
,正确定义:myTuple=(1,)
2、输出数组print(myTuple)
3、输出数组元素print(myTuple[0])
4、tuple和list结合t = ('a', 'b', ['A', 'B'])
,t[2][0]='X'
追記: ステートメントの最後にセミコロン ;
を追加することも追加しないこともできます。編集者は、より簡単なセミコロンを追加しないことを決定しました。
2. sublime を使用して、次の内容の新しいファイル hello.py を作成します。
score = 75 if score>=60: print 'passed'
Windows では、Shift+右クリックしてコマンド ウィンドウを開き、python hello.py
を実行して、 「hello world」と入力して出力します。
3. sublime を使用して、次の内容の新しいファイル hello.py を作成します。
if score>=60: print('passed') else: print('failed')
Linux または Mac 環境では、スクリプトを直接実行できます。まず実行権限 chmod a+x hello.py
を追加してから、./hello.py
を実行します。もちろん、python hello.py
を使用して Windows と同じようにスクリプトを実行することもできます。
モジュールを導入します
1. 次の内容で新しい name.py を作成します:
if score>=90: print('excellent') elif score>=80: print('good') elif score>=60: print('passed') else: print('failed')
2. python name.py
を実行します。
3. Python シェル モードに入り、import name
、print(name.name)
を実行すると、voidking が出力されます。 基本構文よく使用される関数 (出力)、データ型、式、変数、条件とループ、関数。他の言語と同様に、以下の部分を選択して展開します。 リストリンクリスト配列1. 配列を定義しますmyList = ['Hello', 100, True]
2. 出力配列print(myList)
print(myList[0])
、print(myList[-1])
4. 要素を末尾に追加しますmyList.append (' voidking')
myList.insert(0,'voidking')
6. 要素を削除しますmyList.pop(), <code>myList.pop(0)
7. 要素の割り当てmyList[0]='hello666'
配列を定義します
1.myTuple = ('Hello', 100, True)
間違った定義: myTuple1=(1)
、正しい定義: myTuple=(1,)
2. 配列の出力print(myTuple)
3. 配列の要素の出力print(myTuple[0])
4. タプルとリストの結合
t = ('a', 'b', ['A', 'B'])
, t[2][0]='X'
if ステートメント
if
L = [75, 92, 59, 68] sum = 0.0 for score in L: sum += score print(sum / 4)
Enter キーを 2 回押してコードを実行します。
if-else
sum = 0 x = 1 while x<br>if-elif-else<pre class="brush:php;toolbar:false">sum = 0 x = 1 while True: sum = sum + x x = x + 1 if x > 100: break print(sum)
- ループ
-
forループ
L = [75, 98, 59, 81, 66, 43, 69, 85] sum = 0.0 n = 0 for x in L: if x
whileループ -
for x in ['A', 'B', 'C']: for y in ['1', '2', '3']: print(x + y)
break
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59, 'Paul': 75 } print(d) print(d['Adam']) print(d.get('Lisa')) d['voidking']=100 print(d) for key in d: print(key+':',d.get(key))
Continue -
s = set(['Adam', 'Lisa', 'Bart', 'Paul']) print(s) s = set(['Adam', 'Lisa', 'Bart', 'Paul', 'Paul']) print(s) len(s) print('Adam' in s) print('adam' in s) for name in s: print(name)
複数ループ
s = set([('Adam', 95), ('Lisa', 85), ('Bart', 59)]) for x in s: print(x[0]+':',x[1])
dict
dictの機能はキーのセットと値のセットの間のマッピング関係を確立します。
s.add(100) print(s) s.remove(('Adam',95)) print(s)
set
🎜set は一連の要素を保持します。これはリストに非常に似ていますが、set の要素は繰り返されず、順序付けされていないため、dict のキーに非常に似ています。 🎜del sum L = [x*x for x in range(1,101)] print sum(L)
def my_abs(x): if x >= 0: return x else: return -x my_abs(-100)
import math def quadratic_equation(a, b, c): x = b * b - 4 * a * c if x 🎜関数🎜🎜組み込み関数🎜<pre class="brush:php;toolbar:false">def average(*args): if args: return sum(args)*1.0/len(args) else: return 0.0 print(average()) print(average(1, 2)) print(average(1, 2, 2, 3, 4))🎜カスタム関数🎜
L = ['Adam', 'Lisa', 'Bart', 'Paul'] L[0:3] L[:3] L[1:3] L[:] L[::2]🎜導入関数ライブラリ🎜
L[-2:] L[-3:-1] L[-4:-1:2]🎜変数パラメータ🎜
L = range(1, 101) L[-10:] L[4::5][-10:]🎜スライス🎜🎜リストスライス🎜
def firstCharUpper(s): return s[0:1].upper() + s[1:] print(firstCharUpper('hello'))🎜逆スライス🎜
for i in range(1,101): if i%7 == 0: print(i)rree 🎜追記: 範囲は順序付けられ、リストは表現されますデフォルトでは関数形式になります。 range 関数を実行すると、リスト形式で表現できます。 🎜🎜文字列スライス🎜
L = ['Adam', 'Lisa', 'Bart', 'Paul'] for index, name in enumerate(L): print(index+1, '-', name) myList = zip([100,20,30,40],L); for index, name in myList: print(index, '-', name)🎜反復🎜🎜Python の for ループは、リストやタプルだけでなく、他の反復可能なオブジェクトにも使用できます。 🎜反復操作はセットに対するもので、セットが順序付けされているかどうかに関係なく、for ループを使用して常にセットの各要素を順番に取り出すことができます。 🎜セットとは、以下を含む要素のセットを含むデータ構造を指します: 🎜🎜🎜🎜順序付きセット: リスト、タプル、str、および Unicode; 🎜🎜🎜🎜順序なしセット: set🎜🎜🎜🎜 順序なしセットであり、キーと値を持ちます。ペア: dict🎜🎜🎜
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 } print(d.values()) for v in d.values(): print(v)🎜インデックスの反復🎜🎜 順序付きセットの場合、要素にはインデックスが付けられます。for ループでインデックスを取得したい場合はどうすればよいでしょうか。その方法は enumerate() 関数を使用することです。 🎜
L = ['Adam', 'Lisa', 'Bart', 'Paul'] for index, name in enumerate(L): print(index+1, '-', name) myList = zip([100,20,30,40],L); for index, name in myList: print(index, '-', name)
迭代dict的value
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 } print(d.values()) for v in d.values(): print(v)
PS:Python3.x中,dict的方法dict.keys(),dict.items(),dict.values()不会再返回列表,而是返回一个易读的“views”。这样一来,k = d.keys();k.sort()
不再有用,可以使用k = sorted(d)
来代替。
同时,dict.iterkeys(),dict.iteritems(),dict.itervalues()方法不再支持。
迭代dict的key和value
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 } for key, value in d.items(): print(key, ':', value)
列表生成
一般表达式
L = [x*(x+1) for x in range(1,100)] print(L)
复杂表达式
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 } def generate_tr(name, score): if score >=60: return '<tr> <td>%s</td> <td>%s</td> </tr>' % (name, score) else: return '<tr> <td>%s</td> <td>%s</td> </tr>' % (name, score) tds = [generate_tr(name,score) for name, score in d.items()] print('
Name | Score |
---|---|
条件表达式
L = [x * x for x in range(1, 11) if x % 2 == 0] print(L)
def toUppers(L): return [x.upper() for x in L if isinstance(x,str)] print(toUppers(['Hello', 'world', 101]))
多层表达式
L = [m + n for m in 'ABC' for n in '123'] print(L)
L = [a*100+b*10+c for a in range(1,10) for b in range(0,10) for c in range(1,10) if a==c] print(L)
后记
至此,Python基础结束。接下来,爬虫飞起!
更多Python,基础相关文章请关注PHP中文网!

numpyarraysarasarebetterfornumeroperations andmulti-dimensionaldata、whilethearraymoduleissuitable forbasic、1)numpyexcelsinperformance and forlargedatasentassandcomplexoperations.2)thearraymuremememory-effictientivearientfa

NumPyArraySareBetterforHeavyNumericalComputing、whilethearrayarayismoreSuitableformemory-constrainedprojectswithsimpledatatypes.1)numpyarraysofferarays andatiledance andpeperancedatasandatassandcomplexoperations.2)thearraymoduleisuleiseightweightandmemememe-ef

ctypesallowsinging andmanipulatingc-stylearraysinpython.1)usectypestointerfacewithclibrariesforperformance.2)createc-stylearraysfornumericalcomputations.3)passarraystocfunctions foreffientientoperations.how、how、becuutiousmorymanagemation、performanceo

Inpython、「リスト」は、「リスト」、自由主義的なもの、samememory効率が高く、均質な偶然の瞬間の想起された「アレイ」の「アレイ」の「アレイ」の均質な偶発的な想起されたものです

pythonlistsandarraysaraybothmutable.1)listsareflexibleandsupportheTeterdatabutarlessmemory-efficient.2)Arraysaremorememory-efficientiant forhomogeneousdative、ressivelessatile、ressing comerttytytypecodeusageodoavoiderorors。

PythonとCにはそれぞれ独自の利点があり、選択はプロジェクトの要件に基づいている必要があります。 1)Pythonは、簡潔な構文と動的タイピングのため、迅速な開発とデータ処理に適しています。 2)Cは、静的なタイピングと手動メモリ管理により、高性能およびシステムプログラミングに適しています。

PythonまたはCの選択は、プロジェクトの要件に依存します。1)迅速な開発、データ処理、およびプロトタイプ設計が必要な場合は、Pythonを選択します。 2)高性能、低レイテンシ、および緊密なハードウェアコントロールが必要な場合は、Cを選択します。

毎日2時間のPython学習を投資することで、プログラミングスキルを効果的に改善できます。 1.新しい知識を学ぶ:ドキュメントを読むか、チュートリアルを見る。 2。練習:コードと完全な演習を書きます。 3。レビュー:学んだコンテンツを統合します。 4。プロジェクトの実践:実際のプロジェクトで学んだことを適用します。このような構造化された学習計画は、Pythonを体系的にマスターし、キャリア目標を達成するのに役立ちます。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

WebStorm Mac版
便利なJavaScript開発ツール

メモ帳++7.3.1
使いやすく無料のコードエディター

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

ホットトピック









