中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

Python字符串函數怎么用

發布時間:2021-12-18 13:00:46 來源:億速云 閱讀:150 作者:小新 欄目:開發技術

這篇文章給大家分享的是有關Python字符串函數怎么用的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

Python的友好在于提供了非常好強大的功能函數模塊,對于字符串的使用,同樣提供許多簡單便捷的字符串函數。Python 字符串自帶了很多有用的函數,在字符串函數之前先介紹一個非常實用的dir()內置函數,因為對每一個初學者還是大佬級別的python程序員,都不能完全記住所有方法。而該函數可以查看所有這些函數,可調用 dir 并將參數指定為任何字符串(如 dir("")),其返回值包括字符串可以使用的變量、方法和定義的類型。

>>> dir("")
['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__',
 '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', 
 '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'capitalize', 'casefold', 'center', 'count', 
 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum', 'isalpha', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 
 'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 
 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']

其也提供對功能函數的查詢,比如經常使用的math()函數,所以無論是對后面所闡述的字符串函數還是其它函數,我們都可以用dir()內置函數來了解其它函數的類型、定義等等。下面所講述的字符串函數會區分其不同功能來分開介紹,其函數的實現功能大致包含以下六個功能:索引特殊字符串、設置字符格式、修改字符串大小寫、查看字符串特定格式、替換特定字符串、拆分特定字符串。

Python字符串函數怎么用

1 搜索字符串函數

假如我們需要在一段字符串中查找特定的子串時,通常涉及以下幾個函數:

Python字符串函數怎么用

雖然這幾個函數都實現了搜索特定字符串的功能,但還是包含一些區別的:

1. 函數 index 和 find 之間的差別在于沒有找到指定子串時的情形 ,示例如下:

Python字符串函數怎么用

函數index會拋出異常 ValueError,而如果沒有找到指定的子串,函數find將返回 -1。

2.字符串搜索函數通常從左往右(從開頭往末尾)搜索,但以 r 打頭的函數從右往左搜索。例如:

Python字符串函數怎么用

可以看到, 函數 find 和 index 返回傳入字符串第一次出現時的起始位置索引,而 rfind 和 rindex 返回傳入字符串最后一次出現時的起始位置索引。

2 設置字符串格式函數

下表列出了一些設置字符串格式的函數:

Python字符串函數怎么用

center(),ljust()和rjust()函數在日常用的使用很少,反倒是Python2.6以后的format()受到了廣大字符串處理者的使用。使用format函數需要給它提供變量或者值,一個簡單的例子:字符串中的 {0} 和 {1} 引用 format 的參數:它們將被替換為相應字符串或變量的值。也可以使用關鍵字參數的名稱,

>>> '{0} like eat {1}'.format('Wangzi','banana')
'Wangzi like eat banana'
>>> '{who} {id} is Linda'.format(who='My',id='name')
'My name is Linda'

這是一些比較簡單的例子,還有更多細節方面的使用可以參考string — Common string operations — Python 3.10.1 documentation。下面舉一個在抓取jmx數值的實際使用案例。在大數據組件使用過程中,我們通常抓取jmx接口的數據獲取詳情,然后將數據接到相關的展示系統中來監控和展示:例如我們需要抓取一個隊列任務扥id,使用者,運行時間等指標值(此處IP做了處理,有問題可以咨詢博主)。

import json
import urllib3
import re
 
def get_ative_resourcemanager(rm1, rm2):
    http = urllib3.PoolManager()
    rm_list = [rm1, rm2]
    for resourcemanager in rm_list:
        url = 'http://{0}/ws/v1/cluster/info'.format(resourcemanager)
        response = http.request('GET', url)
        data = json.loads(response.data)
        ha_state = data['clusterInfo']['haState']
        if ha_state == "ACTIVE":
            return resourcemanager
'''Conversion time function'''
# 毫秒級轉化為hour/minutes
def conver_time(allTime):
 
    hours = (allTime/(60*60*1000))
    return hours
 
'''get active resourcemanager yarn application metrics'''
def get_queue_metrics():
    active_resoucemanager = get_ative_resourcemanager('ip1:port',
                                                      'ip2:port')
    http = urllib3.PoolManager()
    url = 'http://{0}/ws/v1/cluster/apps'.format(active_resoucemanager)
    response = http.request('GET', url)
    data = json.loads(response.data).get('apps').get('app')
    length = len(data)
    for i in range(length):
        '''判斷application狀態'''
        application_state = data[i]['state']
        queue = data[i]['queue']
        queue_name = re.findall(r'root.*',queue,re.IGNORECASE)
        #print(mobdi_queue)
        if (application_state == 'RUNNING' or application_state == 'ACCEPTED'):
            if queue_name:
                id_metric = data[i]['id']
                user_metric = data[i]['user']
                queue_metrics = data[i]['queue']
                elapsed_time = data[i]['elapsedTime']
                runtime_metric = conver_time(elapsed_time)
                print(str(id_metric) + " " + str(user_metric) + " " + str(queue_metrics) + " " + str(runtime_metric))
 
if __name__ == '__main__':
    ''''''
    get_queue_metrics()

執行結果:

Python字符串函數怎么用

3 改變字符串大小寫函數

提供改變字符串大小寫的函數有以下五個函數:

Python字符串函數怎么用

Python字符串函數怎么用

Python 提供了各種修改字母大小寫的函數,如上表。但注意標紅的地方,Python并沒有修改字符串,而是在這幾個函數中,創建并返回一個新字符串,并沒有真正修改string源字符串。

4 選定字符串函數

選定字符串函數通常用于刪除字符串開頭或者末尾多余的字符串,具體有striip,lstrip和rstrip三個函數。

Python字符串函數怎么用

1.如果不加字符串,將刪除空白字符串:

Python字符串函數怎么用

2.刪除字符串情況:

Python字符串函數怎么用

Python字符串函數怎么用

5 拆分字符串函數

Python提供了以下幾個拆分字符串的函數,主要將字符串拆分成多個子串。

Python字符串函數怎么用

Python字符串函數怎么用

注意示例中存在string和string1兩個字符串,函數 partition 和 rpartition 將字符串拆分為3部分,這兩個函數總是返回一個這樣的值:由3個字符串組成, 形式為 (head, sep, tail) ;而函數 split 以指定字符串為分隔符,將 字符串劃分為一系列子串,返回一個字符串列表,列表總是分別以 [ 和 ] 打頭和結尾,并用逗號分隔元素。splitlines函數按照行('\r', '\r\n', \n')分隔,返回一個包含各行作為元素的列表,使用很少,而且會自行判斷字符串是否包含換行符。

6 替換字符串函數

Python內置兩個字符串替換函數,包括:

Python字符串函數怎么用

Python字符串函數怎么用

感謝各位的閱讀!關于“Python字符串函數怎么用”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

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

AI

南阳市| 宣威市| 饶阳县| 阿克陶县| 南靖县| 九台市| 哈巴河县| 神农架林区| 新乡县| 丰镇市| 吴堡县| 梅河口市| 南木林县| 德安县| 阳朔县| 闻喜县| 栖霞市| 通海县| 麻江县| 唐山市| 泗洪县| 龙南县| 华蓥市| 道孚县| 重庆市| 无锡市| 赤城县| 中宁县| 林芝县| 岳阳市| 慈溪市| 疏勒县| 荔浦县| 乌兰浩特市| 阳泉市| 呈贡县| 罗田县| 门源| 江陵县| 长阳| 龙泉市|