91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python 常見字符串與函數的用法詳解

發布時間:2020-10-03 09:52:22 來源:腳本之家 閱讀:185 作者:天行_ 欄目:開發技術

strip去除空格

s = ' abcd efg '
print(s.strip())  #去除所有空格
print(s.lstrip())  #去除左邊空格
print(s.rstrip())  #去除右邊空格
print(s)
abcd efg
abcd efg 
 abcd efg
 abcd efg 

大小寫

s = 'abc defg'
print(s.upper())
print(s.upper().lower())
print(s.capitalize()) #首字母大寫
ABC DEFG
abc defg
Abc defg

位置和比較

s_1 = 'abcdefg'
s_2 = 'abdefgh'
print(s_1.index('bcd'))
try:
  print(s_1.index('bce'))
except ValueError:
  print('ValueError: substring not found')

print(s_1 == s_1)  # cmp函數被Python3移除了
print(s_1 > s_2)
print(s_2 > s_1)

1
ValueError: substring not found
True
False
True

s = ''
if not s:
  print('true')
else:
  print('flase') #空字符串和flase是等價的
true

分隔和連接

s = 'abc,def,ghi'
print(s.split(','))
s = '123\n456\n789'
numbers = s.split('\n')  #按行分隔
numbers = s.splitlines() #按行分隔
print(numbers)
print('-'.join(numbers)) 

['abc', 'def', 'ghi']
['123', '456', '789']
123-456-789

常用判斷

s = 'abcdefg'
print(s.startswith('abc'))  #判斷是否以某個字符串為開頭
print(s.endswith('efg'))   #判斷是否以某個字符串為結尾
print('abcd1234'.isalnum())  #string中至少有一個字符,而且全是字母或者數字或者是字母和數字混合返回True,其他情況返回False
print('\tabcd1234'.isalnum()) 
print('abcd'.isalpha())    #string中至少有一個字符,而且全為字母,返回True,其他情況返回False
print('12345'.isdigit())   #輸入字符串是否只由數字組成
print(' '.isspace())
print('acb125'.islower())
print('A1B2C'.isupper())
print('Hello world!'.istitle()) #檢測字符串中所有的單詞拼寫首字母是否為大寫,且其他字母為小寫

True
True
True
False
True
True
True
True
True
False

函數

函數定義與默認參數

def func(x, y = 500):
  print(x, y)
func(150)
func(100, 200)
func(y = 300, x = 100)
150 500
100 200
100 300

可變參數

def func(name, *numbers): #加一個星號,就表示告訴python,在處理后面所有參數的時候,把這些參數放到一個數組里面
  print(name)
  print(numbers)
  print(type(numbers))
func('Tom', 1, 2, 3, 4)
Tom
(1, 2, 3, 4)
<class 'tuple'>    
#tuple - 元組,等價于只讀數組,就是后面所有的參數都會作為一個數組

鍵字參數

def func(name, **kvs): # **意思是把它裝到 key/value 字典里,轉化成字典了
  print(name)
  print(kvs)
  print(type(kvs))
func('Jack', china = 'Beijing', uk = 'London')
Jack
{'china': 'Beijing', 'uk': 'London'}
<class 'dict'>

命名關鍵字參數

def func(a,b,c,*, china, uk): # *用于和普通參數做分割,*args一樣效果
  print(china, uk)
func(1,2,3,china = 'Beijing', uk = 'London') # *后面傳遞的參數必須傳入參數名
Beijing London

復雜情況

def func(a, b, c = 0, *args, **kvs):
  print(a, b, c, args, kvs)
func(1, 2)
func(1, 2, 3)
func(1, 2, 3, 'a', 'b')
func(1, 2, 3, 'a', 'b', china = 'Beijing', uk = 'London')
func(1, 2, 3, *('a', 'b'), **{'china':'Beijing', 'uk':'London'}) #提高代碼的可讀性
1 2 0 () {}
1 2 3 () {}
1 2 3 ('a', 'b') {}
1 2 3 ('a', 'b') {'china': 'Beijing', 'uk': 'London'}
1 2 3 ('a', 'b') {'china': 'Beijing', 'uk': 'London'}
def my_print(*args):
  print(*args) #傳變量時,在變量前加上*號,代表把這個數組作為可變參數處理
  my_print('x = ',100, 'y = ',200)
x = 100 y = 200

函數可以作為參數

def sum(x,y,p = None):
  s = x + y 
  if p:
    p(s)
  return 


sum(100,200)
sum(100,200,print)

300
def cmp(x,y,cp = None):
  if not cp:
    if x > y:
      return 1
    elif x < y:
      return -1
    else:
      return 0
  else:
    return cp(x,y)

def my_cp(x ,y):
  if x < y:
    return 1
  elif x == y:
    return 0
  else:
    return -1

print(cmp(100,200))
print(cmp(100,200,my_cp))

-1
1

遞歸

把一個大問題分解成同樣結構的小問題, 然后利用小問題的解得出大問題的解

def my_sum(i):
  if i < 0:
    raise ValueError
  elif i <=1:
    return i
  else:
    return i + my_sum(i - 1) # my_sum(i - 1)是它更小范圍內的解,利用這個子問題的解得出當前的解

print(my_sum(1))
print(my_sum(2))
print(my_sum(3))
print(my_sum(10))
print(my_sum(100))
1
3
6
55
5050
# 遞歸的經典例子!
# 斐波那契數列 f(n) = f(n - 1) + f(n -2)
def fib(n):
  if n < 1:
    raise ValueError
  elif (n == 1) or (n == 2):
    return 1
  else:
    return fib(n - 1) + fib(n - 2)
print(fib(1))
print(fib(2))
print(fib(3))
print(fib(4))
print(fib(5))
print(fib(6))
1
1
2
3
5
8

總結

以上所述是小編給大家介紹的python 常見字符串與函數的用法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

沧州市| 汉川市| 漳平市| 陆良县| 英超| 岳池县| 科尔| 泸西县| 临潭县| 松潘县| 长乐市| 克什克腾旗| 友谊县| 玉田县| 利津县| 温泉县| 孙吴县| 汝阳县| 丹寨县| 广西| 江源县| 思南县| 耿马| 辽阳市| 潮州市| 罗田县| 宁都县| 上杭县| 和龙市| 施秉县| 漯河市| 阳新县| 大同市| 阳曲县| 酉阳| 江口县| 黑水县| 修水县| 温宿县| 博兴县| 甘肃省|