python3.x 快速入門

Edit the > 2018/6/15 11:26:53

1認識Python

人生苦短,我用python
- 優雅,明確,簡單 是python設計哲學
- python的設計目標之一, 是讓代碼具備高度的可閱讀性
- python 被廣泛用於web程序,GUI開發,操作系統,科學計算,人工智能,遊戲等領域;


python的特點

  • 是一種動態語言
  • 被設計成可擴充的
  • 是一種完全面向對象的語言
  • 語法簡潔,開發效率高,維護成本低
  • 跨平臺,功能強大

2python的版本與選擇

  • python2.x與python3.x
  • python核心團隊計劃在2020年停止支持python2
  • python2.7是最後一個python2.x版本
  • 建議使用pytho3.6.x進行學習

3安裝python開發環境

下載pythonhttps://www.python.org/downloads/release/python-365/
- windows環境
- window版本選擇.可執行的安裝包
- macos環境:python下是默認python2的. 所以要切換python 很簡單. 直接敲python3 即可
- linux環境



- 關於IDE的選擇:PyCharm


4基本語法規則

4.1選擇編譯

#!/use/bin/python3

#在mac和linux環境下要加#!/use/bin/python3  註明解釋器要用這個編譯

4.2註釋

# 單行註釋

'''
多行註釋
'''

"""
 多行註釋
"""

4.3代碼塊

# python是用空格來代表代碼塊的 不像js 和java 等於語言裏面的 {}
if True:
print("true")
else:
print("false")

4.4數據結構

  1. Number
    • int(x [,base ]) 將x轉換爲一個整數
    • long(x [,base ]) 將x轉換爲一個長整數
    • float(x ) 將x轉換到一個浮點數
    • complex(real [,imag ]) 創建一個複數 *
    • str(x ) 將對象 x 轉換爲字符串
    • repr(x ) 將對象 x 轉換爲表達式字符串
    • eval(str ) 用來計算在字符串中的有效Python表達式,並返回一個對象
    • tuple(s ) 將序列 s 轉換爲一個元組
    • list(s ) 將序列 s 轉換爲一個列表
    • chr(x ) 將一個整數轉換爲一個字符
    • unichr(x ) 將一個整數轉換爲Unicode字符
    • ord(x ) 將一個字符轉換爲它的整數值
    • hex(x ) 將一個整數轉換爲一個十六進制字符串
    • oct(x ) 將一個整數轉換爲一個八進制字符串
  2. String
  3. List(列表)
  4. Tuple(元組)
  5. Sets(集合)
  6. Dictionary(字典)

    a = 10
    b = 2.3
    c = True
    d = 3 + 4j # 複數 j複數單位
    print(a)
    print(b)
    print(c)
    print(d)

    type() 判斷數據類型

    print(type(a))
    print(type(b))
    print(type(c))
    print(type(d))

4.5變量

# 變量
'''
聲明時不付值是不會被使用的
第一個字符必須是字母或_開頭
'''
a1 = 200
b1 = c1 = d1 = e1 = 1  # 多變量賦值
a2, b2, c2 = 1, 2.3, "我"  # 分別賦值
print(b1, c1, d1, e1)
print(a2, b2, c2)
del a1  # 刪 對象

4.6運算符

4.6.1算術運算符

print(5 ** 3)  # 冪運算 5的3次方
print(7 // 3)  # 不要餘數 取整商

4.6.2比較運算符

和其他語言相同

4.6.3賦值運算符

和其他語言相同

4.6.4邏輯運算符

and or not 與或非 #python
&& || ! 其他編程語言

4.6.5位運算符

按照二進制位 來運算的
& 與
| 或
^ 亦或
~ 按類取反
移位 >>右 <<左

4.6.6成員運算符

in 在
not in 不在
在一個集合裏有還是沒有 該值

4.6.7身份運算符

表示對象的存儲單元的
is
is not
是不是引致一個對象

4.6.8運算符優先級

指數>位運算>乘除摸加減等

4.7string類型操作

# python中沒有字符類型
#拼接
a = 'asdf'
b = "asdfasd"
c = """
多行
字符
串
"""
print(a + b + c)


# 在cd之間插入其他字符
str1 = "abcdefg"
print(str1[:3] + "123" + str1[3:])

# 截取
print(str1[2:5])

# 格式化
print('ABCD%d' %(123))
print('%x' %(100))
print("name:%s,age:%d" %("Tom",21))

4.7函數

def hello(str):
print("hello: %s" % (str))


hello("tom")


def fun01(a, b):
return a + b


print(fun01(1, 2))


def fun02(a=2, b=4):
return a + b


print(fun02(2, 2))
print(fun02())

4.8變量的作用域

'''
L   (local) 局部作用域
E   (Enclosing) 閉包函數外的函數中
G   (Clobal)  全局作用域
B   (Built-in)  內建作用域
'''
x = int(32)  # 建內作用域
g_a = 0  # 全局作用域


def function03():
    o_c = 1  # 閉包作用域

def function04():
    i_b = 3  # 局部作用域

.
#空函數 pass佔位符
def function05():
pass

4.9模塊

模塊

4.10流程控制

# 循環語句
n = 100
sum = 0
counter = 1
while counter <= n:
    sum += counter
    counter += 1
    print(sum)

# 嵌套
if True:
    if True:
        pass
    else:
        pass
else:
    pass

# 循環輸入;
while True:
mun = int(input("請輸出一個數字"))
print("輸出的數字的是", mun)

counter = 0
while counter < 3:
    print("counter:", counter)
    counter += 1
else:
    print("counter", counter)
# 在python 後面是可以添加else 語句的
counter = 0
while counter < 3:
print("counter:", counter)
    counter += 1
else:
    print("else-counter", counter)

# for 循環語句 後面是可以添加else 語句的
for a in [1, 2, 2.51, 5]:
    print(a)
else:
    print("haha")

for a in range(0,5):
    print(a)

for a in range(3,5):
    print(a)

for a in range(1,5,2):
    print(a)

4.11 內置數據結構

# 列表爲例
list=["abcd",123,3.14,True]
print(list*3)#連續輸出3次
print(list[0])
print(list[3])

list2=["haha",100]
#加號拼接
print(list+list2)
#截取片段
list[0]="ABCD"
list[1:3]=[321,99.99]

# 集合
set1 = {"tom", "marry", "jack", "rose", "tom"}
set2 = set("asdfqwer")
print(set1)  # 重複的tom 被去掉了

# 判斷裏面是不是有這個集合元素
if "jeck" in set1:
print("zai")
else:
print("bu zai")

set3 = set('adsa12345')
print(set2)
print(set3)
# 集合的差集
print(set2 - set3)
# 集合的並集
print(set2 | set3)
# 集合的交集
print(set2 & set3)
# 不同是存在的
print(set2 ^ set3)


  • List(列表)
    可以看成數組
    [var1,var2,var3,…]
  • Tuple(元祖)
    可以看成數組.但是裏面的元素不能修改.只讀的列表
    (var1,var2,var3,…)
  • Sets(集合)
    可以看成數組.但是裏面的元素不能重複
    {var1,var2,var3,…}
  • Dictionary(字典)
    以鍵值對成堆出現的
    {key1:var1,key2:var2,key3:var3,…}

strint ,元祖 ,列表 都屬於序列 所以都是for循環

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章