1. 程式人生 > >Python3從零學習(一)

Python3從零學習(一)

# python 3.+
# -*- coding: utf-8 -*-

#檢視版本號python -V

#列印
print("Hello Python")

#等待使用者輸入
input("請按下回車鍵")

#同一行顯示多條語句
import sys;x = '同一行顯示多條語句';sys.stdout.write(x + '\n')

#變數賦值
counter = 100 #整形變數
miles = 1000.0 #浮點型
name = "Python" #字串

print(counter);print(miles);print(name)

#多個變數賦值
a = b = c = 1
d ,e , f = 1 , 2 , "Python"
print(a,b,c)
print(d,e,f)

#標準資料型別
#Number String List Tuple(元祖) Dictionary

#del刪除物件
va = 1
del va
#print(va) 現在就會報錯

#數字型別
#int long float complex(複數)

#字串
s = 'ILoveYou'

print(s) #輸出字串
print(s[0]) #輸出第一個字元
print(s[2:5]) #輸出第三個到第五個字元
print(s[2:]) #輸出從第三個字元開始的字元
print(s * 2) #輸出兩次
print(s + "Too") #連線字元

#列表
list = ["ssss",121,'d',100.0]
print(list)
print(list[0:2])

#元祖
tuple = ("ssss",121,'d',100.0)
print(tuple)
print(tuple[1:2])
#元祖不能更新

#元字典
dict = {"name":"haha","age":20}
print(dict)
print(dict["name"]) #輸出鍵為name的值
print(dict.keys()) #輸出所有的鍵
print(dict.values()) #輸出所有的值

#資料型別轉換表
# 函式	                             描述
#————————————————————————————————————————————————————————————————
# 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 轉換為一個列表
# set(s)                    |    轉換為可變集合
# dict(d)                   |    建立一個字典。d 必須是一個序列 (key,value)元組。
# frozenset(s)              |    轉換為不可變集合
# chr(x)                    |    將一個整數轉換為一個字元
# unichr(x)                 |    將一個整數轉換為Unicode字元
# ord(x)                    |    將一個字元轉換為它的整數值
# hex(x)                    |    將一個整數轉換為一個十六進位制字串
# oct(x)                    |    將一個整數轉換為一個八進位制字串
#————————————————————————————————————————————————————————————————


#運算子
a1 = 21
a2 = 10
c = 0

c = a1 + a2
print(c)

c = a1 - a2
print(c)

c = a1 * a2
print(c)

c = a1 / a2
print(c)

c = a1 % a2
print(c)

c = a1**a2 #a1的a2次方
print(c)

c = a1 // a2 #整除
print(c)

#比較運算子

t = "true"
f = "false"

if (a1 == a2):
    print(t)
else:
    print(f)

if (a1 != a2):
    print(t)
else:
    print(f)

if (a1 > a2):
    print(t)
else:
    print(f)

if (a1 < a2):
    print(t)
else:
    print(f)

#>=  <=
#賦值運算子
c +=a1
print(c)

c *=a1
print(c)

c /=a1
print(c)

c **=a1 #冪賦值
print(c)

c %=a1
print(c)

c //=a1
print(c)


#位運算子
# 運算子	描述	例項
# &	    按位與運算子:  參與運算的兩個值,如果兩個相應位都為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 	(~a ) 輸出結果 -61 ,二進位制解釋: 1100 0011, 在一個有符號二進位制數的補碼形式。
# <<	左移動運算子:  運算數的各二進位全部左移若干位,由"<<"右邊的數指定移動的位數,高位丟棄,低位補0。	a << 2 輸出結果 240 ,二進位制解釋: 1111 0000
# >>	右移動運算子:  把">>"左邊的運算數的各二進位全部右移若干位,">>"右邊的數指定移動的位數

#邏輯運算子
a = True
b = False

if (a and b):
    print(t)
elif (a or b):
    print("one"+t)
else:
    print(f)

#身份運算子
a = 10
b = 10

if (a is b):
    print(t)
else:
    print(f)

if (id(a) == id(b)):
    print(t)
else:
    print(f)

print("-----------")

b = 20

if (a is b):
    print(t)
elif (a is not b):
    print("not"+t)
else:
    print(f)

#運算優先順序
# 運算子	          描述
# ** 	      指數 (最高優先順序)
# ~ + - 	  按位翻轉, 一元加號和減號 (最後兩個的方法名為 
[email protected]
[email protected]) # * / % // 乘,除,取模和取整除 # + - 加法減法 # >> << 右移,左移運算子 # & 位 'AND' # ^ | 位運算子 # <= < > >= 比較運算子 # <> == != 等於運算子 # = %= /= //= -= += *= **= 賦值運算子 # is is not 身份運算子 # in not in 成員運算子 # not or and 邏輯運算子