1. 程式人生 > >python day2

python day2

als print 2種 缺點 put 代碼 什麽 a + b lse

一. 回顧昨天內容
1. python是一門什麽樣的編程語言
解釋型=>弱類型語言
2. 兩個版本
2.x 和 3.x
3. 變量:
程序運行過程中暫存到內存中的值
命名規範:
1. 字母, 數字, 下劃線組成
2. 不能數字開頭. 也不能是全數字
3. 不能是關鍵字
4. 不能用中文(規範)
5. 不能太長
6. 有意義
7. 兩種命名規範: 1. 駝峰, 2. 下劃線
8. 區分大小寫

4. 數據類型
1. int(整數)
2. str(字符串) -> ‘,",‘‘‘,"""
3. bool(布爾值) -> True, False
5. 常量:
不存在絕對的常量. 約定俗成.所有字母大寫認為是常量
6. 註釋:
# 單行註釋
‘‘‘ 多行註釋, 文檔註釋‘‘‘
"""
7. 用戶交互
ret=input("提示語")
8. 流程控制-if
if 條件:
代碼塊

if 條件:
代碼
else:
代碼

if 條件:
代碼塊
elif 條件:
代碼塊
elif 條件:
代碼塊
.....
else:
代碼塊

9. while循環
while 條件:
循環體
10.break和continue
break: 停止循環
continue: 停止本次循環. 繼續執行下一次循環
二. 今天的主要內容
1. 格式化輸出
%s 字符串
%d 數字
%% 轉義 %

‘‘‘
name = input("請輸入你的名字")
print("我叫"+name+", 我今年19歲")

# 接收4個參數
name = input("輸入你的名字:")
age = input("輸入你的年齡:")
job = input("輸入你的工作:")
hobby = input("輸入你的愛好:")
# %s 字符串
print("""------------ info of 周傑倫 -----------
Name : %s
Age : %d
job : %s
Hobbie: %s
------------- end -----------------""" % (name, name, age, job, hobby))

# %d 整數
# print("我叫sylar, 今年%d歲了" % (58))

name = input("輸入名字:")
age= input("輸入年齡:") # 字符串
print("我叫%s, 今年%d歲了" % (name, int(age))) # %d要的是數字
‘‘‘
# %s 處理字符串. 全能的.
# print("旭哥.今年%s" % (18))
# %d 處理數字. 只能接收數字

# 我叫sylar, 我們學習python已經2%了
# 如果你的字符串中.用了%s或者%d這種形式. 那麽後面的%, 認為是站位.如果需要用到% . 需要寫%%
# print("我叫%s, 我們學習python已經2%%了" % ("sylar"))
# print("遊戲加載已經80%%了") # 如果字符串中沒有用到站位. 那麽%還是你的%
# %f = 小數
‘‘‘
alex = "1888"
print("%s很帥" % ("alex"))
‘‘‘

2. 運算符
// 整除
% 計算余數
** 求次冪
a+=b => a = a + b
and 兩邊都是真. 結果才是真,
or 有一個是真. 結果就是真,
not 非真既假. 非假既真

# 運算順序 () => not => and => or . 同樣的運算符從左往右算

# F and T or F => F or F => F
#print(1 > 2 and 4 < 6 or 5 > 8 ) # F
# F and T or F and T or F and T
# F or F or F => F
#print(5 > 6 and 7 < 8 or 7> 9 and 4 < 6 or 7 < 5 and 8 > 6)
#print(3>4 or 4<3 and 1==1) # F
#print(1 < 2 and 3 < 4 or 1>2) # T
#print(2 > 1 and 3 < 4 or 4 > 5 and 2 < 1) # T
#print(1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8) # F
#print(1 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6) # F
#print(not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6) # F
# or 如果第一位是非零. 輸出第一位. 如果是零輸出第二位
# and 和or相反
#print(1 and 2) # 2
#print(0 and 2) # 0
#print(1 and 3) # 3
#print(2 and 3) # 3
#print(2 or 0 or 3) # 2
#print(1 or 3 or 4) # 1
#print(3 and 5 and 0) # 5 0
#print(0 or 0 or 5 or 3) # 5

#print(1 or 2 and 3) #
#print(3 and 4 or 8 and 5 or 6) #

#print(1 > 2 and 2)


3. 初識編碼
ASCII 8bit 1byte
GBK 16bit 2byte
UNICODE 32bit 4byte
UTF-8 最少8位 1byte 中文24bit 3byte

ASCII 由8個bit描述一個字節(字符)
1個bit => 2種情況
2個bit => 4中情況
3個bit => 8種情況
8個bit => 256種情況
‘‘‘
‘‘‘
ASCII 不能裝中文. 8個bit組成.最多有256種可能. 沒有中文 1byte
GBK 有中文. 16個bit => 2byte
把ANSI 空余的位置交給各個國家. 交給中國之後. 中國繼續編碼.-GBK
交給臺灣臺灣繼續編碼. BIG5
依然不能國際化
UNICODE 萬國碼. 目的是把所有國家的文字都進行編碼. 占32位. 缺點: 浪費
ASCII碼的內容是不能改變的. 編碼還應該是原來的編碼. 但是unicode占用32個位置. ASCII會強制在前面補24個0. 在網絡傳輸和數據存儲上會浪費空間
32個bit => 4個byte

UTF-8: 可變長度的unicode編碼, 8的意思是一個字符最少8位
英文: 8bit, 1byte
歐洲: 16bit, 2byte
中文: 24bit, 3byte

ASCII: 8bit 1byte
GBK: 16bit 2byte
unicode:32bit 4byte
UTF-8: 最少8bit, 1byte, 中文: 24bit 3byte

計算機存儲系統單位換算
8bit => 1byte
1024byte => 1KB
1024kb = 1MB
1024MB = 1GB
1024GB = 1TB


4. while...else...

index = 0
while index < 5:
if index == 3:
break # break的時候不會執行while後面的else
print("旭哥")
index = index + 1
else: # 條件不成立. 執行的代碼
print("梁姐")

5. in 和not in

# in 可以幫我們判斷xxx字符串是否出現在xxxxxxx字符串中
content = input("請輸入你的評論:")
# 馬化騰是特殊字符
if "馬化騰" in content:
print("非法的")
else:
print("合法的")

# not in 沒有出現xxx

python day2