python 3の基礎操作について
279449 ワード
pythonの基礎操作について
一、pythonの長所と短所について
長所:シンプル–Pythonはシンプル主義思想を代表する言語です.良いPythonプログラムを読むと英語を読んでいるような気がしますが、この英語の要求は非常に厳しいです!Pythonのこのような擬似コードの本質はその最大の利点の一つである.言語そのものを理解するのではなく、問題の解決に集中することができます.学びやすい–あなたが間もなく見るように、Pythonは非常に使いやすいです.前述したように、Pythonには極めて簡単な文法があります.無料、オープンソース–PythonはFLOSS(フリー/オープンソースソフトウェア)の1つです.簡単に言えば、このソフトウェアのコピーを自由に公開したり、ソースコードを読んだり、変更したり、新しいフリーソフトウェアに使用したりすることができます.FLOSSは、1つの団体が知識を共有する概念に基づいています.これはなぜPythonがこのように優れているのかという理由の1つです.それは、より優れたPythonの人は創造し、常に改善しています.上位言語–Python言語でプログラムを作成する場合は、プログラムが使用するメモリをどのように管理するかなどの最下位の詳細を考慮する必要はありません.移植性–オープンソースの本質により、Pythonは多くのプラットフォームに移植されています(異なるプラットフォームで動作するように変更されています).システムに依存する特性を使用しないように注意してください.これらのプラットフォームには、Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Pが含まれます.sion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CEにはPocketPC、Symbian、GoogleがLinuxベースで開発したAndroidプラットフォームもあります!解釈性–この点にはいくつかの解釈が必要です.CやC++などのコンパイル言語で書かれたプログラムは、ソースファイル(CまたはC++言語)からコンピュータで使用される言語に変換できます.(バイナリコード、すなわち0と1).このプロセスはコンパイラと異なるタグ、オプションによって完了します.プログラムを実行すると、接続/転載器ソフトウェアはあなたのプログラムをハードディスクからメモリにコピーして実行します.Python言語で書かれたプログラムはバイナリコードにコンパイルする必要はありません.ソースコードから直接プログラムを実行できます.コンピュータ内部では、Python解釈器はソースコードをバイトコードと呼ばれる中間形式に変換し,コンピュータで使用される機械言語に翻訳して実行する.実際には、プログラムのコンパイル方法、正しいライブラリの転送方法などを心配する必要がなくなり、Pythonの使用が簡単になりました.Pythonプログラムを別のコンピュータにコピーするだけで動作するため、Pythonプログラムの移植が容易になります.オブジェクト向け–Pythonはプロセス向けのプログラミングもオブジェクト向けのプログラミングもサポートします.「プロシージャ向け」言語では、プログラムはプロシージャまたは再利用可能なコードのみの関数によって構築されます.「オブジェクト向け」言語では、プログラムはデータと機能を組み合わせたオブジェクトで構築されます.Pythonは、C++やJavaなどの他の主要言語に比べて、非常に強力で簡単な方法でオブジェクト向けのプログラミングを実現しています.拡張性–重要なコードをより速く実行する必要がある場合や、いくつかのアルゴリズムを公開しないことを望んでいる場合は、一部のプログラムをCまたはC++で作成し、Pythonプログラムで使用することができます.豊富なライブラリ–Python標準ライブラリは確かに膨大です.正規表現、ドキュメント生成、ユニットテスト、スレッド、データベース、Webブラウザ、CGI、FTP、Eメール、XML、XML-RPC、HTML、WAVファイル、パスワードシステムなど、さまざまな作業を処理できます.GUI(グラフィックユーザインタフェース)、Tk、その他のシステムに関する操作.Pythonがインストールされている限り、これらの機能はすべて利用可能であることを覚えておいてください.これはPythonと呼ばれる「機能がそろっている」コンセプト.標準ライブラリのほかにも、wxPython、Twisted、Pythonイメージライブラリなど、高品質のライブラリがたくさんあります.仕様のコード–Pythonは、コードの読み取り可能性を向上させるために強制的にインデントします.
難点:運転速度、速度要求があればC++でキーを書き換えましょう.国内市場は比較的小さい(国内ではPythonが主な開発を行っているが、現在はweb 2.0社しかない).しかし時間が経つにつれて、現在多くの国内ソフトウェア会社、特にゲーム会社も規模が彼を使用し始めている.中国語の資料が乏しい(良いPythonは中国語の資料が指折り数えるほどで、今は多くなるはずです).コミュニティのおかげで、いくつかの優秀な教材が翻訳されましたが、入門級の教材が多く、高級な内容はやはり英語版しか見られません.フレーム選択が多すぎます(C#のような公式.netフレームはなく、rubyのように歴史が短いため、フレーム開発が相対的に集中しているわけではない.Ruby on Railsフレーム開発では小型ウェブプログラムが天下無敵である).しかしこれも別の側面からpythonが優れており、魅力的な人材が多く、項目も多いと説明されている.
二、pythonの基礎操作について
三、pythonのデータ型について
四、pythonの演算子について
五、数字の詳細
六、文字列の詳細
七、リストの詳細
八、元グループの詳細
一、pythonの長所と短所について
長所:シンプル–Pythonはシンプル主義思想を代表する言語です.良いPythonプログラムを読むと英語を読んでいるような気がしますが、この英語の要求は非常に厳しいです!Pythonのこのような擬似コードの本質はその最大の利点の一つである.言語そのものを理解するのではなく、問題の解決に集中することができます.学びやすい–あなたが間もなく見るように、Pythonは非常に使いやすいです.前述したように、Pythonには極めて簡単な文法があります.無料、オープンソース–PythonはFLOSS(フリー/オープンソースソフトウェア)の1つです.簡単に言えば、このソフトウェアのコピーを自由に公開したり、ソースコードを読んだり、変更したり、新しいフリーソフトウェアに使用したりすることができます.FLOSSは、1つの団体が知識を共有する概念に基づいています.これはなぜPythonがこのように優れているのかという理由の1つです.それは、より優れたPythonの人は創造し、常に改善しています.上位言語–Python言語でプログラムを作成する場合は、プログラムが使用するメモリをどのように管理するかなどの最下位の詳細を考慮する必要はありません.移植性–オープンソースの本質により、Pythonは多くのプラットフォームに移植されています(異なるプラットフォームで動作するように変更されています).システムに依存する特性を使用しないように注意してください.これらのプラットフォームには、Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Pが含まれます.sion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CEにはPocketPC、Symbian、GoogleがLinuxベースで開発したAndroidプラットフォームもあります!解釈性–この点にはいくつかの解釈が必要です.CやC++などのコンパイル言語で書かれたプログラムは、ソースファイル(CまたはC++言語)からコンピュータで使用される言語に変換できます.(バイナリコード、すなわち0と1).このプロセスはコンパイラと異なるタグ、オプションによって完了します.プログラムを実行すると、接続/転載器ソフトウェアはあなたのプログラムをハードディスクからメモリにコピーして実行します.Python言語で書かれたプログラムはバイナリコードにコンパイルする必要はありません.ソースコードから直接プログラムを実行できます.コンピュータ内部では、Python解釈器はソースコードをバイトコードと呼ばれる中間形式に変換し,コンピュータで使用される機械言語に翻訳して実行する.実際には、プログラムのコンパイル方法、正しいライブラリの転送方法などを心配する必要がなくなり、Pythonの使用が簡単になりました.Pythonプログラムを別のコンピュータにコピーするだけで動作するため、Pythonプログラムの移植が容易になります.オブジェクト向け–Pythonはプロセス向けのプログラミングもオブジェクト向けのプログラミングもサポートします.「プロシージャ向け」言語では、プログラムはプロシージャまたは再利用可能なコードのみの関数によって構築されます.「オブジェクト向け」言語では、プログラムはデータと機能を組み合わせたオブジェクトで構築されます.Pythonは、C++やJavaなどの他の主要言語に比べて、非常に強力で簡単な方法でオブジェクト向けのプログラミングを実現しています.拡張性–重要なコードをより速く実行する必要がある場合や、いくつかのアルゴリズムを公開しないことを望んでいる場合は、一部のプログラムをCまたはC++で作成し、Pythonプログラムで使用することができます.豊富なライブラリ–Python標準ライブラリは確かに膨大です.正規表現、ドキュメント生成、ユニットテスト、スレッド、データベース、Webブラウザ、CGI、FTP、Eメール、XML、XML-RPC、HTML、WAVファイル、パスワードシステムなど、さまざまな作業を処理できます.GUI(グラフィックユーザインタフェース)、Tk、その他のシステムに関する操作.Pythonがインストールされている限り、これらの機能はすべて利用可能であることを覚えておいてください.これはPythonと呼ばれる「機能がそろっている」コンセプト.標準ライブラリのほかにも、wxPython、Twisted、Pythonイメージライブラリなど、高品質のライブラリがたくさんあります.仕様のコード–Pythonは、コードの読み取り可能性を向上させるために強制的にインデントします.
難点:運転速度、速度要求があればC++でキーを書き換えましょう.国内市場は比較的小さい(国内ではPythonが主な開発を行っているが、現在はweb 2.0社しかない).しかし時間が経つにつれて、現在多くの国内ソフトウェア会社、特にゲーム会社も規模が彼を使用し始めている.中国語の資料が乏しい(良いPythonは中国語の資料が指折り数えるほどで、今は多くなるはずです).コミュニティのおかげで、いくつかの優秀な教材が翻訳されましたが、入門級の教材が多く、高級な内容はやはり英語版しか見られません.フレーム選択が多すぎます(C#のような公式.netフレームはなく、rubyのように歴史が短いため、フレーム開発が相対的に集中しているわけではない.Ruby on Railsフレーム開発では小型ウェブプログラムが天下無敵である).しかしこれも別の側面からpythonが優れており、魅力的な人材が多く、項目も多いと説明されている.
二、pythonの基礎操作について
(1)
1. _ 。
2. 、 。
3. 。
4. Python 3 , , ASCII 。
python
, 。Python keyword , :
>>> import keyword
>>> keyword.kwlist
['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
(2)
Python # , :
(Python 3.0+)
#!/usr/bin/python3
#
print ("Hello, Python!") #
, :
Hello, Python!
# , ''' """:
(Python 3.0+)
#!/usr/bin/python3
#
#
'''
'''
"""
"""
print ("Hello, Python!")
, :
Hello, Python!
(3)
python , {} 。
, 。 :
(Python 3.0+)
if True:
print ("True")
else:
print ("False")
, :
if True:
print ("Answer")
print ("True")
else:
print ("Answer")
print ("False") # ,
, :
File "test.py", line 6
print ("False") # , ^
IndentationError: unindent does not match any outer indentation level
(4)
Python , , (\) , :
total = item_one + \
item_two + \
item_three
[], {}, () , (\), :
total = ['item_one', 'item_two', 'item_three',
'item_four', 'item_five']
(5) (Number)
python : 、 、 。
int ( ), 1, int, , python2 Long。
bool ( ), True。
float ( ), 1.23、3E-2
complex ( ), 1 + 2j、 1.1 + 2.2j
(6) (String)
python 。
(''' """) 。
'\'
, r 。。 r"this is a line with
"
, 。
, "this " "is " "string" this is string。
+ , * 。
Python , 0 , -1 。
Python 。
Python , 1 。
: [ : : ]
word = ' '
sentence = " 。"
paragraph = """ ,
"""
(Python 3.0+)
#!/usr/bin/python3
str='Runoob'
print(str) #
print(str[0:-1]) #
print(str[0]) #
print(str[2:5]) #
print(str[2:]) #
print(str * 2) #
print(str + ' ') #
print('------------------------------')
print('hello
runoob') # (\)+n
print(r'hello
runoob') # r, ,
r raw, raw string。
:
Runoob
Runoo
R
noo
noob
RunoobRunoob
Runoob
------------------------------
hello
runoob
hello
runoob
(7)
, 。 , 。
, Python 。 ,Python 。 , 。
: 。
(8)
:
(Python 3.0+)
#!/usr/bin/python3
input("
enter 。")
,"
" 。 enter , 。
(9)
, 。
if、while、def class , , ( : ) , 。
(clause)。
:
if expression :
suite
elif expression :
suite
else :
suite
(10)Print
print , end="":
(Python 3.0+)
#!/usr/bin/python3
x="a"
y="b"
#
print( x )
print( y )
print('---------')
#
print( x, end=" " )
print( y, end=" " )
print()
:
a
b
---------
a b
(11)import from...import
python import from...import 。
(somemodule) , : import somemodule
, : from somemodule import somefunction
, : from somemodule import firstfunc, secondfunc, thirdfunc
, : from somemodule import *
sys
import sys
print('================Python import mode==========================')
print (' :')
for i in sys.argv:
print (i)
print ('
python ',sys.path)
sys argv,path
from sys import argv,path #
print('================python from import===================================')
print('path:',path) # path , sys.path
help
help()
help(print) sep=' '。
。
>>> help(print)
Help on built-in function print in module builtins:
print(...)
print(value, ..., sep=' ', end='
', file=sys.stdout, flush=False)
Prints the values to a stream, or to sys.stdout by default.
Optional keyword arguments:
file: a file-like object (stream); defaults to the current sys.stdout.
sep: string inserted between values, default a space.
end: string appended after the last value, default a newline.
flush: whether to forcibly flush the stream.
dict , :
>>> def getPairs(dict):
... for k,v in dict.items() :
... print(k,v,sep=':')
...
:
>>> getPairs({ x : x ** 3 for x in (1,2,3,4)})
1:1
2:8
3:27
4:64
>>>
三、pythonのデータ型について
Python3
Python 。 , 。
Python , , , " " 。
(=) 。
(=) , (=) 。
:
(Python 3.0+)
#!/usr/bin/python3
counter = 100 #
miles = 1000.0 #
name = "runoob" #
print (counter)
print (miles)
print (name)
»
:
100
1000.0
runoob
Python 。 :
a = b = c = 1
, , 1, , 。
。 :
a, b, c = 1, 2, "runoob"
, 1 2 a b, "runoob" c。
Python3 :
Number( )
String( )
List( )
Tuple( )
Set( )
Dictionary( )
Python3 :
(3 ):Number( )、String( )、Tuple( );
(3 ):List( )、Dictionary( )、Set( )。
1.Number( )
Python3 int、float、bool、complex( )。
Python 3 , int, , python2 Long。
, 。
type() 。
>>> a, b, c, d = 20, 5.5, True, 4+3j
>>> print(type(a), type(b), type(c), type(d))
<class 'int'> <class 'float'> <class 'bool'> <class 'complex'>
isinstance :
>>> a = 111
>>> isinstance(a, int)
True
>>>
isinstance type :
type() 。
isinstance() 。
:
>>> class A:
... pass
...
>>> class B(A):
... pass
...
>>> isinstance(A(), A)
True
>>> type(A()) == A
True
>>> isinstance(B(), A)
True
>>> type(B()) == A
False
: Python2 , 0 False, 1 True。 Python3 , True False , 1 0, 。
,Number :
var1 = 1
var2 = 10
del 。
del :
del var1[,var2[,var3[....,varN]]]
del 。 :
del var
del var_a, var_b
>>> 5 + 4 #
9
>>> 4.3 - 2 #
2.3
>>> 3 * 7 #
21
>>> 2 / 4 # ,
0.5
>>> 2 // 4 # ,
0
>>> 17 % 3 #
2
>>> 2 ** 5 #
32
:
1、Python , a, b = 1, 2。
2、 。
3、 :/ ,// 。
4、 ,Python 。
2.String( )
Python ' " , \ 。
:
[ : ]
0 ,-1 。
+ , * , 。 :
#!/usr/bin/python3
str = 'Runoob'
print (str) #
print (str[0:-1]) #
print (str[0]) #
print (str[2:5]) #
print (str[2:]) #
print (str * 2) # , print (2 * str)
print (str + "TEST") #
:
Runoob
Runoo
R
noo
noob
RunoobRunoob
RunoobTEST
Python \ , , r, :
>>> print('Ru
oob')
Ru
oob
>>> print(r'Ru
oob')
Ru
oob
>>>
, (\) , 。 """...""" '''...''' 。
,Python , 1 。
>>> word = 'Python'
>>> print(word[0], word[5])
P n
>>> print(word[-1], word[-6])
n P
C ,Python 。 , word[0] = 'm' 。
:
1、 , r 。
2、 + , * 。
3、Python , 0 , -1 。
4、Python 。
3.List( )
List( ) Python 。
。 , , ( )。
[] 、 。
, , 。
:
[ : ]
0 ,-1 。
+ , * 。 :
#!/usr/bin/python3
list = [ 'abcd', 786 , 2.23, 'runoob', 70.2 ]
tinylist = [123, 'runoob']
print (list) #
print (list[0]) #
print (list[1:3]) #
print (list[2:]) #
print (tinylist * 2) #
print (list + tinylist) #
:
['abcd', 786, 2.23, 'runoob', 70.2]
abcd
[786, 2.23]
[2.23, 'runoob', 70.2]
[123, 'runoob', 123, 'runoob']
['abcd', 786, 2.23, 'runoob', 70.2, 123, 'runoob']
Python , :
>>> a = [1, 2, 3, 4, 5, 6]
>>> a[0] = 9
>>> a[2:5] = [13, 14, 15]
>>> a
[9, 2, 13, 14, 15, 6]
>>> a[2:5] = [] # []
>>> a
[9, 2, 6]
List , append()、pop() , 。
:
1、List , 。
2、 ,list 。
3、List + 。
4、List 。
Python , , 1 4 2( ) :
, :
def reverseWords(input):
# ,
inputWords = input.split(" ")
#
# list = [1,2,3,4],
# list[0]=1, list[1]=2 , -1 list[-1]=4 ( list[3]=4 )
# inputWords[-1::-1]
# -1
# ,
# ,-1
inputWords=inputWords[-1::-1]
#
output = ' '.join(inputWords)
return output
if __name__ == "__main__":
input = 'I like runoob'
rw = reverseWords(input)
print(rw)
:
runoob like I
4.Tuple( )
(tuple) , 。 () , 。
:
#!/usr/bin/python3
tuple = ( 'abcd', 786 , 2.23, 'runoob', 70.2 )
tinytuple = (123, 'runoob')
print (tuple) #
print (tuple[0]) #
print (tuple[1:3]) #
print (tuple[2:]) #
print (tinytuple * 2) #
print (tuple + tinytuple) #
:
('abcd', 786, 2.23, 'runoob', 70.2)
abcd
(786, 2.23)
(2.23, 'runoob', 70.2)
(123, 'runoob', 123, 'runoob')
('abcd', 786, 2.23, 'runoob', 70.2, 123, 'runoob')
, 0 ,-1 。 ( , )。
, 。
>>> tup = (1, 2, 3, 4, 5, 6)
>>> print(tup[0])
1
>>> print(tup[1:5])
(2, 3, 4, 5)
>>> tup[0] = 11 #
Traceback (most recent call last):
File "" , line 1, in <module>
TypeError: 'tuple' object does not support item assignment
>>>
tuple , , list 。
0 1 , :
tup1 = () #
tup2 = (20,) # ,
string、list tuple sequence( )。
:
1、 , 。
2、 , 。
3、 0 1 。
4、 + 。
5.Set( )
(set) , 。
。
{ } set() , : set() { }, { } 。
:
parame = {value01,value02,...}
set(value)
#!/usr/bin/python3
sites = {'Google', 'Taobao', 'Runoob', 'Facebook', 'Zhihu', 'Baidu'}
print(sites) # ,
#
if 'Runoob' in sites :
print('Runoob ')
else :
print('Runoob ')
# set
a = set('abracadabra')
b = set('alacazam')
print(a)
print(a - b) # a b
print(a | b) # a b
print(a & b) # a b
print(a ^ b) # a b
:
{'Zhihu', 'Baidu', 'Taobao', 'Runoob', 'Google', 'Facebook'}
Runoob
{'b', 'c', 'a', 'r', 'd'}
{'r', 'b', 'd'}
{'b', 'c', 'a', 'z', 'm', 'r', 'l', 'd'}
{'c', 'a'}
{'z', 'b', 'm', 'r', 'l', 'd'}
6.Dictionary( )
(dictionary) Python 。
, 。 : , 。
, { } , (key) : (value) 。
(key) 。
, (key) 。
#!/usr/bin/python3
dict = {}
dict['one'] = "1 - "
dict[2] = "2 - "
tinydict = {'name': 'runoob','code':1, 'site': 'www.runoob.com'}
print (dict['one']) # 'one'
print (dict[2]) # 2
print (tinydict) #
print (tinydict.keys()) #
print (tinydict.values()) #
:
1 -
2 -
{'name': 'runoob', 'code': 1, 'site': 'www.runoob.com'}
dict_keys(['name', 'code', 'site'])
dict_values(['runoob', 1, 'www.runoob.com'])
dict() :
>>> dict([('Runoob', 1), ('Google', 2), ('Taobao', 3)])
{'Runoob': 1, 'Google': 2, 'Taobao': 3}
>>> {x: x**2 for x in (2, 4, 6)}
{2: 4, 4: 16, 6: 36}
>>> dict(Runoob=1, Google=2, Taobao=3)
{'Runoob': 1, 'Google': 2, 'Taobao': 3}
>>>
, , clear()、keys()、values() 。
:
1、 , 。
2、 , 。
3、 { }。
7.Python
, , , 。
。 , 。
:
int(x [,base])
x
float(x)
x
complex(real [,imag])
str(x)
x
repr(x)
x
eval(str)
Python ,
tuple(s)
s
list(s)
s
set(s)
dict(d)
。d (key, value) 。
frozenset(s)
chr(x)
ord(x)
hex(x)
oct(x)
( )
, 。
, 。
( ):
>>>def example(a,b):
... return (a,b)
...
>>>type(example(3,4))
<class 'tuple'>
>>>
python , "*" , 。
:
def test(*args):
print(args)
return args
print(type(test(1,2,3,4))) #
( )
python (hashtable) ( ),
: ,in 。
for , :
def example(d):
# d
for c in d:
print(c)
# , d ;
# d , .
kye:value :
for c in dict:
print(c,':',dict[c])
for c in dict:
print(c,end=':');
print(dict[c])
list , :
list = [ 'abcd', 786 , 2.23, 'runoob', 70.2 ]
print (list[1:3]) #
list[1:3] , list , 1 2 3 ,
print (list[2])
print (list[2:3])
,
2.23
[2.23]
------------------------------------------------------
temmple_wang@qq.com :
list = [ 'abcd', 786 , 2.23, 'runoob', 70.2 ]
print (list[1:3]) #
# [786, 2.23]
:
print (list[1:3]) # 1 3( 3) ,
# [786, 2.23]
:
print (list[1:0]) #
# []
print (list[1:1]) #
# []
print (list[0:1]) #
# ['abcd']
:
>>> print(arrtest[1:-1]) # 1 , 4 4
[786, 2.23, 'runoob']
>>> print(arrtest[-3:-2]) # 2 , 3 3
[2.23]
----------------------------
list :
list = [ 'abcd', 786 , 2.23, 'runoob', 70.2 ]
print (list[2])
print (list[2:3])
:
2.23
[2.23]
, :
a = list[2]
b = list[2:3]
type(a) -> <class 'float'>
type(b) -> <class 'list'>
python C Java , , C Java , , python , , :
>>> a = 1
>>> a = 1.001
>>> a = "python"
>>> print(a)
python
>>>
a , , , 。
四、pythonの演算子について
1.Python
a 10, b 21:
+ - a + b 31
- - a - b -11
* - a * b 210
/ - x y b / a 2.1
% - b % a 1
** - x y a**b 10 21
// -
>>> 9//2
4
>>> -9//2
-5
2.Python
a 10, b 20:
== - (a == b) False。
!= - (a != b) True。
> - x y (a > b) False。
< - x y。 1 , 0 。 True False 。 , 。 (a < b) True。
>= - x y。 (a >= b) False。
<= - x y。 (a <= b) True。
3.Python
a 10, b 20:
= c = a + b a + b c
+= c += a c = c + a
-= c -= a c = c - a
*= c *= a c = c * a
/= c /= a c = c / a
%= c %= a c = c % a
**= c **= a c = c ** a
//= c //= a c = c // a
:= , 。Python3.8 。
, len() :
if (n := len(a)) > 10:
print(f"List is too long ({n} elements, expected <= 10)")
4.Python
& : , 1, 1, 0 (a & b) 12 , : 0000 1100
| : 1 , 1。 (a | b) 61 , : 0011 1101
^ : , 1 (a ^ b) 49 , : 0011 0001
~ : , 1 0, 0 1。~x -x-1 (~a ) -61 , : 1100 0011, 。
<< : , "< , , 0。 a << 2 240 , : 1111 0000
>> : ">>" ,">>" a >> 2 15 , : 0000 1111
5.Python
Python , a 10, b 20:
and x and y " " - x False,x and y False, y 。 (a and b) 20。
or x or y " " - x True, x , y 。 (a or b) 10。
not not x " " - x True, False 。 x False, True。 not(a and b) False
Python
,Python , , , 。
in True, False。 x y , x y True。
not in True, False。 x y , x y True。
Python
is is x is y, id(x) == id(y) , True, False
is not is not x is not y , id(a) != id(b)。 True, False。
6.Python
:
** ( )
~ + - , ( +@ -@)
* / % // , ,
+ -
>> << ,
& 'AND'
^ |
<= < > >=
== !=
= %= /= //= -= += *= **=
is is not
in not in
not and or
:
a = 00111100
, python :
2 0b : : 0b11 3
8 0o : : 0o11 9
16 0x : : 0x11 17
, :
>>> a=0b111100
>>> a
60
, :
bin,oct,hex , , , :
>>> a=0b111100
>>> a=60
>>> bin(a)
'0b111100'
>>> oct(a)
'0o74'
>>> hex(a)
'0x3c'
:
python, a++, ++ , , , python 。
python , 。
,python ++ : , 。
, python c , , :
>>> b = 5
>>> a = 5
>>> id(a)
162334512
>>> id(b)
162334512
>>> a is b
True
, python , c , 5, , ID , python 。
python , ,a b 5, a ,b , 。
, a = a + 1 a += 1, a , id() ,id , a 。
7. is ==
(1) , , -5~256 , :
a = 100000
b = 100000
if a is b:
print('a b , :',id(a))
else:
print('a b ,a :',id(a),'b :',id(b))
:
a b , : 2158477874512
(2) , :
a = -100000
b = -100000
if a is b:
print('a b , :',id(a))
else:
print('a b ,a :',id(a),'b :',id(b))
:
a b , : 2137845175632
(3) , , 。 :
list1 = [10000,20000,30000]
list2 = [10000,12000,15000]
if list1[0] is list2[0]:
print('list1[0] list2[0] , :',id(list1[0]))
else:
print('list1[0] list2[0] ,list1[0] :',id(list1[0]),'list2[0] :',id(list2[0]))
:
list1[0] list2[0] , : 1375086286224
(4) , , , :
tuple1 = (10000,20000,30000)
tuple2 = (10000,12000,15000)
if tuple1[0] is tuple2[0]:
print('tuple1[0] tuple2[0] , :',id(tuple1[0]))
else:
print('tuple1[0] tuple2[0] ,tuple1[0] :',id(tuple1[0]),'tuple2[0] :',id(tuple2[0]))
:
tuple1[0] tuple2[0] ,tuple1[0] : 1375086286384 tuple2[0] : 1375086286480
(5) , , 。 :
dict1 = {1:10000,2:20000,3:30000}
dict2 = {1:10000,2:12000,3:15000}
if dict1[1] is tuple2[1]:
print('dict1[1] tuple2[1] , :',id(dict1[1]))
else:
print('dict1[1] tuple2[1] ,dict1[1] :',id(dict1[1]),'tuple2[1] :',id(dict2[1]))
:
dict1[1] tuple2[1] ,dict1[1] : 1375086286224 tuple2[1] : 1375086286224
五、数字の詳細
1.Python
, , , 。
int(x) x 。
float(x) x 。
complex(x) x , x, 0。
complex(x, y) x y , x, y。x y 。
a :
>>> a = 1.0
>>> int(a)
1
2.Python
Python , , 。
: +, -, * /, ( Pascal C) 。 :
>>> 2 + 2
4
>>> 50 - 5*6
20
>>> (50 - 5*6) / 4
5.0
>>> 8 / 5 #
1.6
: 。
, / , , , // :
>>> 17 / 3 #
5.666666666666667
>>>
>>> 17 // 3 #
5
>>> 17 % 3 # %
2
>>> 5 * 3 + 2
17
:// , 。
>>> 7//2
3
>>> 7.0//2
3.0
>>> 7//2.0
3.0
>>>
= 。 , , 。
>>> width = 20
>>> height = 5*9
>>> width * height
900
Python ** :
>>> 5 ** 2 # 5
25
>>> 2 ** 7 # 2 7
128
" "( ), :
>>> n #
Traceback (most recent call last):
File "" , line 1, in <module>
NameError: name 'n' is not defined
:
>>> 3 * 3.75 / 1.5
7.5
>>> 7.0 / 2
3.5
, _ 。 :
>>> tax = 12.5 / 100
>>> price = 100.50
>>> price * tax
12.5625
>>> price + _
113.0625
>>> round(_, 2)
113.06
, _ 。
_ , ," ", _ ,_=10 , _ 10, del _。
3.
( )
abs(x) , abs(-10) 10
ceil(x) , math.ceil(4.1) 5
cmp(x, y)
x < y -1, x == y 0, x > y 1。 Python 3 , (x>y)-(x<y) 。
exp(x) e x (ex), math.exp(1) 2.718281828459045
fabs(x) , math.fabs(-10) 10.0
floor(x) , math.floor(4.9) 4
log(x) math.log(math.e) 1.0,math.log(100,10) 2.0
log10(x) 10 x , math.log10(100) 2.0
max(x1, x2,...) , 。
min(x1, x2,...) , 。
modf(x) x , x , 。
pow(x, y) x**y 。
round(x [,n])
x , n , 。
。
sqrt(x) x 。
, , , , , 。
Python :
choice(seq) , random.choice(range(10)), 0 9 。
randrange ([start,] stop [,step]) , , 1
random() , [0,1) 。
seed([x]) seed。 , seed,Python seed。
shuffle(lst)
uniform(x, y) , [x,y] 。
Python :
acos(x) x 。
asin(x) x 。
atan(x) x 。
atan2(y, x) X Y 。
cos(x) x 。
hypot(x, y) sqrt(x*x + y*y)。
sin(x) x 。
tan(x) x 。
degrees(x) , degrees(math.pi/2) , 90.0
radians(x)
4.
pi pi( , π )
e e,e ( )
ps:
1. _ , ," ", _ ,_=10 , _ 10, del _。
2. randint,sample
random.randint(x,y) # int ,
>>> random.randint(1000,9999)
8449
random.sample(sequence,length) , , 。
>>> lst = random.sample('abcd1234',4)
>>> strs = ''.join(lst)
>>> strs
'a432'
>>>
searchsulin
searchsulin
3. 4 6 5 , 。
“4 6 5 , ” 。 ieee , python , 。 " " 。 “4 6 5 , ” " ".
, 。 " " 。
, 。
( ):
(1) 4 4 , , 5.214 5.21。
(2) 6 6 , , 5.216 5.22。
(3) , :
>>> round(5.215,2)#
5.21
>>> round(5.225,2)
5.22
>>>
>>> round(1.5)#
2
>>> round(1.5)==round(2.5)#
True
>>> round(1.15,1)
1.1
>>> round(1.25,1)
1.2
>>> round(1.151,1)
1.2
>>> round(1.251,1)
1.3
(4) 5, 。 , 5.2152 5.22,5.2252 5.23,5.22500001 5.23。
,“ ” “ ” , , , , , ,“ ” 。
4.Python3 cmp() , :
import operator #
operator.gt(1,2) # greater than( )
operator.ge(1,2) # greater and equal( )
operator.eq(1,2) # equal( )
operator.le(1,2) # less and equal( )
operator.lt(1,2) # less than( )
5. += =+ 。
1:
>>> a = 5
>>> a += 6
>>> a
11
:
>>> a = 5
>>> a = a + 6
>>> a
11
2:
>>> b = 5
>>> b =+ 6
>>> b
6
6 11 ? 2 :
>>> b = 5
>>> b = +6 # , ,+ 6 +6,+6 6
>>> b
6
+= =+ ! Python a++ !
六、文字列の詳細
Python3
Python 。 ( ' " ) 。
, 。 :
var1 = 'Hello World!'
var2 = "Runoob"
Python
Python , Python 。
Python , , :
(Python 3.0+)
#!/usr/bin/python3
var1 = 'Hello World!'
var2 = "Runoob"
print ("var1[0]: ", var1[0])
print ("var2[1:5]: ", var2[1:5])
:
var1[0]: H
var2[1:5]: unoo
Python
, :
(Python 3.0+)
#!/usr/bin/python3
var1 = 'Hello World!'
print (" : ", var1[:6] + 'Runoob!')
: Hello Runoob!
Python
,python (\) 。 :
\( )
\\
\'
\"
\a
\b (Backspace)
\000
\v
\t
\r
\f
\oyy ,yy , :\o12 , o , 0。
\xyy ,yy , :\x0a
\other
Python
a "Hello",b "Python":
+ a + b : HelloPython
* a*2 :HelloHello
[] a[1] e
[ : ] , ,str[0:2] 3 。 a[1:4] ell
in - True 'H' in a True
not in - True 'M' not in a True
r/R - : , 。 r( ) , 。
print( r'
' )
print( R'
' )
% 。
(Python 3.0+)
#!/usr/bin/python3
a = "Hello"
b = "Python"
print("a + b :", a + b)
print("a * 2 :", a * 2)
print("a[1] :", a[1])
print("a[1:4] :", a[1:4])
if( "H" in a) :
print("H a ")
else :
print("H a ")
if( "M" not in a) :
print("M a ")
else :
print("M a ")
print (r'
')
print (R'
')
:
a + b : HelloPython
a * 2 : HelloHello
a[1] : e
a[1:4] : ell
H a
M a
Python
Python 。 , %s 。
Python , C sprintf 。
(Python 3.0+)
#!/usr/bin/python3
print (" %s %d !" % (' ', 10))
:
10 !
python :
%c ASCII
%s
%d
%u
%o
%x
%X ( )
%f ,
%e
%E %e,
%g %f %e
%G %f %E
%p
:
*
-
+ ( + )
<sp>
# ('0'), '0x' '0X'( 'x' 'X')
0 '0'
% '%%' '%'
(var) ( )
m.n. m ,n ( )
Python2.6 , str.format(), 。
Python
python , 、 。
(Python 3.0+)
#!/usr/bin/python3
para_str = """
TAB ( \t )。
[
]。
"""
print (para_str)
:
TAB ( )。
[
]。
, WYSIWYG( ) 。
, HTML SQL , , 。
errHTML = '''
<HTML><HEAD><TITLE>
Friends CGI Demo</TITLE></HEAD>
<BODY><H3>ERROR</H3>
<B>%s</B><P>
<FORM><INPUT TYPE=button VALUE=Back
ONCLICK="window.history.back()"></FORM>
</BODY></HTML>
'''
cursor.execute('''
CREATE TABLE users (
login VARCHAR(8),
uid INTEGER,
prid INTEGER)
''')
f-string
f-string python3.6 , , 。
(%):
>>> name = 'Runoob'
>>> 'Hello %s' % name
'Hello Runoob'
f-string f , , {} , , :
>>> name = 'Runoob'
>>> f'Hello {name}' #
>>> f'{1+2}' #
'3'
>>> w = {'name': 'Runoob', 'url': 'www.runoob.com'}
>>> f'{w["name"]}: {w["url"]}'
'Runoob: www.runoob.com'
, %s, %d。
Python 3.8 = :
>>> x = 1
>>> print(f'{x+1}') # Python 3.6
2
>>> x = 1
>>> print(f'{x+1=}') # Python 3.8
'x+1=2'
Unicode
Python2 , 8 ASCII , Unicode 16 unicode , 。 u。
Python3 , Unicode 。
Python
Python :
1
capitalize()
2
center(width, fillchar)
width ,fillchar , 。
3
count(str, beg= 0,end=len(string))
str string , beg end str
4
bytes.decode(encoding="utf-8", errors="strict")
Python3 decode , bytes decode() bytes , bytes str.encode() 。
5
encode(encoding='UTF-8',errors='strict')
encoding , ValueError , errors 'ignore' 'replace'
6
endswith(suffix, beg=0, end=len(string))
obj , beg end obj , , True, False.
7
expandtabs(tabsize=8)
string tab ,tab 8 。
8
find(str, beg=0, end=len(string))
str , beg end , , , -1
9
index(str, beg=0, end=len(string))
find() , str .
10
isalnum()
True, False
11
isalpha()
True, False
12
isdigit()
True False..
13
islower()
, ( ) , True, False
14
isnumeric()
, True, False
15
isspace()
, True, False.
16
istitle()
( title()) True, False
17
isupper()
, ( ) , True, False
18
join(seq)
, seq ( )
19
len(string)
20
ljust(width[, fillchar])
, fillchar width ,fillchar 。
21
lower()
.
22
lstrip()
。
23
maketrans()
, , , , 。
24
max(str)
str 。
25
min(str)
str 。
26
replace(old, new [, max])
str1 str2, max , max 。
27
rfind(str, beg=0,end=len(string))
find() , .
28
rindex( str, beg=0, end=len(string))
index(), .
29
rjust(width,[, fillchar])
, fillchar( ) width
30
rstrip()
.
31
split(str="", num=string.count(str))
num=string.count(str)) str , num , num+1
32
splitlines([keepends])
('\r', '\r
',
') , , keepends False, , True, 。
33
startswith(substr, beg=0,end=len(string))
substr , True, False。 beg end , 。
34
strip([chars])
lstrip() rstrip()
35
swapcase()
,
36
title()
" " , , ( istitle())
37
translate(table, deletechars="")
str ( 256 ) string , deletechars
38
upper()
39
zfill (width)
width , , 0
40
isdecimal()
, true, false。
ps:
, 。
1、
var=' '
list=[]
list=[i for i in var]
2、
join :
var1=' ,'.join(list)
3、 , tuple()
tup=tuple(var)
七、リストの詳細
Python3
Python 。 - , , 0, 1, 。
Python 6 , 。
, , , , 。
,Python 。
Python , 。
, 。 :
list1 = ['Google', 'Runoob', 1997, 2000]
list2 = [1, 2, 3, 4, 5 ]
list3 = ["a", "b", "c", "d"]
, 0 。 、 。
, , :
(Python 3.0+)
#!/usr/bin/python3
list1 = ['Google', 'Runoob', 1997, 2000]
list2 = [1, 2, 3, 4, 5, 6, 7 ]
print ("list1[0]: ", list1[0])
print ("list2[1:5]: ", list2[1:5])
»
:
list1[0]: Google
list2[1:5]: [2, 3, 4, 5]
, append() , :
(Python 3.0+)
#!/usr/bin/python3
list = ['Google', 'Runoob', 1997, 2000]
print (" : ", list[2])
list[2] = 2001
print (" : ", list[2])
: append()
:
: 1997
: 2001
del , :
(Python 3.0+)
#!/usr/bin/python3
list = ['Google', 'Runoob', 1997, 2000]
print (" : ", list)
del list[2]
print (" : ", list)
:
: ['Google', 'Runoob', 1997, 2000]
: ['Google', 'Runoob', 2000]
: remove()
Python
+ * 。+ ,* 。
:
Python
len([1, 2, 3]) 3
[1, 2, 3] + [4, 5, 6] [1, 2, 3, 4, 5, 6]
['Hi!'] * 4 ['Hi!', 'Hi!', 'Hi!', 'Hi!']
3 in [1, 2, 3] True
for x in [1, 2, 3]: print(x, end=" ") 1 2 3
Python
Python , :
L=['Google', 'Runoob', 'Taobao']
:
Python
L[2] 'Taobao'
L[-2] 'Runoob' : count from the right
L[1:] ['Runoob', 'Taobao']
>>>L=['Google', 'Runoob', 'Taobao']
>>> L[2]
'Taobao'
>>> L[-2]
'Runoob'
>>> L[1:]
['Runoob', 'Taobao']
>>>
:
>>>squares = [1, 4, 9, 16, 25]
>>> squares += [36, 49, 64, 81, 100]
>>> squares
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
>>>
, :
>>>a = ['a', 'b', 'c']
>>> n = [1, 2, 3]
>>> x = [a, n]
>>> x
[['a', 'b', 'c'], [1, 2, 3]]
>>> x[0]
['a', 'b', 'c']
>>> x[0][1]
'b'
Python &
Python :
1 len(list)
2 max(list)
3 min(list)
4 list(seq)
Python :
1 list.append(obj)
2 list.count(obj)
3 list.extend(seq)
( )
4 list.index(obj)
5 list.insert(index, obj)
6 list.pop([index=-1])
( ),
7 list.remove(obj)
8 list.reverse()
9 list.sort( key=None, reverse=False)
10 list.clear()
11 list.copy()
ps:
1. Python , 。
a=[1,2,3,4]
for i in range(len(a)):
print(id(a[i]))
a[1]=100
print("----------")
for i in range(len(a)):
print(id(a[i]))
:
4471499232
4471499264
4471499296
4471499328
----------
4471499232
4471502400
4471499296
4471499328
2.python , cols rows
list_2d = [[0 for col in range(cols)] for row in range(rows)]
:
>>> list_2d = [ [0 for i in range(5)] for i in range(5)]
>>> list_2d[0].append(3)
>>> list_2d[0].append(5)
>>> list_2d[2].append(7)
>>> list_2d
[[0, 0, 0, 0, 0, 3, 5], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 7], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]
3. ([])- , , , , ? , 。
>>> list_empty = [0]*10
>>> list_empty
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
10 0 。 , 。 None。None Python , " "。 , 10 , :
>>> list_empty = [None]*10
>>> list_empty
[None, None, None, None, None, None, None, None, None, None]
4. ( )
1、 :
[ for in ]
[ for in if ]
2、 :
#!/usr/bin/python
# -*- coding: utf-8 -*-
li = [1,2,3,4,5,6,7,8,9]
print ([x**2 for x in li])
print ([x**2 for x in li if x>5])
print (dict([(x,x*10) for x in li]))
print ([ (x, y) for x in range(10) if x % 2 if x > 3 for y in range(10) if y > 7 if y != 8 ])
vec=[2,4,6]
vec2=[4,3,-9]
sq = [vec[i]+vec2[i] for i in range(len(vec))]
print (sq)
print ([x*y for x in [1,2,3] for y in [1,2,3]])
testList = [1,2,3,4]
def mul2(x):
return x*2
print ([mul2(i) for i in testList])
:
[1, 4, 9, 16, 25, 36, 49, 64, 81]
[36, 49, 64, 81]
{1: 10, 2: 20, 3: 30, 4: 40, 5: 50, 6: 60, 7: 70, 8: 80, 9: 90}
[(5, 9), (7, 9), (9, 9)]
[6, 7, -3]
[1, 2, 3, 2, 4, 6, 3, 6, 9]
[2, 4, 6, 8]
3、 :
for , , if
八、元グループの詳細
Python3
Python , 。
, 。
, , 。
(Python 3.0+)
>>>tup1 = ('Google', 'Runoob', 1997, 2000)
>>> tup2 = (1, 2, 3, 4, 5 )
>>> tup3 = "a", "b", "c", "d" #
>>> type(tup3)
<class 'tuple'>
tup1 = ()
, , :
(Python 3.0+)
>>>tup1 = (50)
>>> type(tup1) # ,
<class 'int'>
>>> tup1 = (50,)
>>> type(tup1) # ,
<class 'tuple'>
, 0 , , 。
, :
(Python 3.0+)
#!/usr/bin/python3
tup1 = ('Google', 'Runoob', 1997, 2000)
tup2 = (1, 2, 3, 4, 5, 6, 7 )
print ("tup1[0]: ", tup1[0])
print ("tup2[1:5]: ", tup2[1:5])
:
tup1[0]: Google
tup2[1:5]: (2, 3, 4, 5)
, , :
(Python 3.0+)
#!/usr/bin/python3
tup1 = (12, 34.56)
tup2 = ('abc', 'xyz')
# 。
# tup1[0] = 100
#
tup3 = tup1 + tup2
print (tup3)
:
(12, 34.56, 'abc', 'xyz')
, del , :
(Python 3.0+)
#!/usr/bin/python3
tup = ('Google', 'Runoob', 1997, 2000)
print (tup)
del tup
print (" tup : ")
print (tup)
, , :
tup :
Traceback (most recent call last):
File "test.py", line 8, in <module>
print (tup)
NameError: name 'tup' is not defined
, + * 。 , 。
Python
len((1, 2, 3)) 3
(1, 2, 3) + (4, 5, 6) (1, 2, 3, 4, 5, 6)
('Hi!',) * 4 ('Hi!', 'Hi!', 'Hi!', 'Hi!')
3 in (1, 2, 3) True
for x in (1, 2, 3): print (x,) 1 2 3
,
, , , :
:
L = ('Google', 'Taobao', 'Runoob')
Python
L[2] 'Runoob'
L[-2] 'Taobao' ,
L[1:] ('Taobao', 'Runoob') , 。
:
>>> L = ('Google', 'Taobao', 'Runoob')
>>> L[2]
'Runoob'
>>> L[-2]
'Taobao'
>>> L[1:]
('Taobao', 'Runoob')
Python
1 len(tuple)
。
>>> tuple1 = ('Google', 'Runoob', 'Taobao')
>>> len(tuple1)
3
>>>
2 max(tuple)
。
>>> tuple2 = ('5', '4', '8')
>>> max(tuple2)
'8'
>>>
3 min(tuple)
。
>>> tuple2 = ('5', '4', '8')
>>> min(tuple2)
'4'
>>>
4 tuple(iterable)
。
>>> list1= ['Google', 'Taobao', 'Runoob', 'Baidu']
>>> tuple1=tuple(list1)
>>> tuple1
('Google', 'Taobao', 'Runoob', 'Baidu')
。
>>> tup = ('r', 'u', 'n', 'o', 'o', 'b')
>>> tup[0] = 'g' #
Traceback (most recent call last):
File "" , line 1, in <module>
TypeError: 'tuple' object does not support item assignment
>>> id(tup) #
4440687904
>>> tup = (1,2,3)
>>> id(tup)
4441088800 #
, tup, , 。
:
tuple , 。 !tuple : 。 ,tuple ( ) , 。
>>> a = (1,[3,2])
>>> a[1][0] = 1
>>> a
(1, [1, 2])
>>> a[1].append(3)
>>> a
(1, [1, 2, 3])
>>> del a[1][2]
>>> a
(1, [1, 2])
>>> del a[1]
Traceback (most recent call last):
File "" , line 1, in <module>
TypeError: 'tuple' object doesn't support item deletion
>>> del a[1][1]
>>> del a[1][0]
>>> a
(1, [])
>>>
tuple, tuple
>>> a = '12345'
>>> a[2]
'3'
>>> a[3:]
'45'
>>> type(a)
<class 'str'>
>>> a*2
'1234512345'
>>> 6 in a
Traceback (most recent call last):
File "" , line 1, in <module>
TypeError: 'in ' requires string as left operand, not int
>>> a
'12345'
>>> for x in a: print(x)
...
1
2
3
4
5