#字符串拼接(%):
a = 'i am %s, age %d' %('alex', 12) #中間不需要用逗號分隔,多個參數后面加括號
print(a) # --> i am alex, age 12
# %s是萬能的,可接收一切類型;%d則只能取整型。使用不同類型的可讀性強,故一般不全都使用%s
# %s 字符串
# %d 整型
# %f 浮點數
#打印百分號(%): %%
#字典形式的拼接:
a = {'name':'alex', 'age':18} print('my name is %(name)s, age is %(age)d' %a)#注意%(name)s,%(age)d,后面s/d不能忽略
#多字符串拼接(sep):
print('root','x','0','0', sep=':') # --> root:x:0:0
# format格式化:
print('i am {}, age {}'.format('ad',12)) # --> i am ad, age 12
print('i am {1}, age {0}'.format('ad',12)) # --> i am 12, age ad
print('i am {1}, age {1}'.format('ad',12)) # --> i am 12, age 12
#format中使用列表或元組時,必須加一個*
print('i am {}, age {}'.format(*['alex',18])) print('i am {}, age {}'.format(*('alex',18)))
#format中使用字典時,必須加兩個**
a = {"name":'alex', 'age':18} print('i am {name}, age {age}'.format(**a))
#下面方法與上面字典結果一樣:
print('i am {name}, age {age}'.format(name='alex', age=18)) #注意name,age 不加引號
# format對數字的不同處理方法:
print('{:b}, {:o}, {:d}, {:x}, {:X}, {:%}'.format(15,15,15,15,15,15)) #:b二進制 :o八進制 :d十進制 :x十六進制(小寫字母) :X十六進制(大寫字母) :%顯示百分比 # --> 1111, 17, 15, f, F, 1500.000000%
### 函數 ###
#函數定義方法:
def test(x): "the function definitions" #功能注釋
x += 1
return x
#返回值:
如果沒有返回值則返回None
返回值只有一個:返回該值
返回值有多個:返回一個元組,(可同時使用多個變量來分開獲取)
#位置參數和關鍵字參數:
test(1,2,3) #位置參數,需一一對應
test(y=2, z=3, x=1) #關鍵字參數,不需一一對應
test(1,2, z=3) #兩種參數同時存在時,關鍵字參數必須在最右邊
#默認參數:
def test(x,y,z='zzz'): # z為默認參數,不傳入該參數則使用默認值
#參數組(**字典 *列表):
*args #傳位置參數,生成元組
def test(x,*args): #前面正常賦值,然后將多余的轉換成元組保存在args
print(x, args) test(1,2,3,4) # --> 1 (2, 3, 4)
**kwargs #傳關鍵字參數,生成字典
def test(x,**kwargs): print(x,kwargs) test(1,z=3, y=2) # --> 1 {'z': 3, 'y': 2}
#列表或元組類型的實參的兩種傳入方式:
test(1,['x','y','z']) #不加*,該列表整體作為一個參數保存在元組 # --> 1 (['x', 'y', 'z'],)
test(1,*['x','y','z']) #加*,將該列表各個元素分開,保存在元組 # --> 1 ('x', 'y', 'z')