日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

字符串类型的数字比较大小_Python核心知识系列:数字与字符串类型

發布時間:2023/12/19 python 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 字符串类型的数字比较大小_Python核心知识系列:数字与字符串类型 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?學習任何一種編程語言時首先要對它的數據類型有所了解,從本篇開始會對 Python 中的常見數據類型的基本概念和操作進行介紹。

Python中有6種標準的數據類型:數字(Number)、字符串(String)、列表(List)、元組(Tuple)、集合(Set)、字典(Dictionary)。

上述6種數據類型可分為兩類:

  • 不可變數據類型:數字、字符串、元組。
  • 可變數據類型:列表、集合、字典。

什么是不可變數據類型和可變數據類型,在下面具體的示例中再介紹,會有更清晰的認識。

本文介紹兩個最基本的數據類型:數字和字符串。

數字

1 基本概念

Python 的數字類型中包括:整型(int)、浮點型(float)、布爾型(bool)、復數(complex)。其中,布爾型:表示真(True)、假(False)。0和空都表示False,如 ' '、[ ]、{ }、None。非空表示True。

2 常用操作

數值運算:加、減、乘、除、整除、求余(+、-、 *、 /、 //、 %)

10、2、8、16進制表示與轉換:

二進制:用0b表示,如0b10表示10進制的2。

八進制:用0o表示,如0o10表示10進制的8。

十六進制:用0x表示,如0x10表示10進制的16。

bin( ):轉換為二進制。

int( ):轉換為十進制。

hex( ):轉換為十六進制。

oct( ):轉換為八進制。

內建函數(BIF):

abs():取絕對值

ceil() / floor():向上 / 向下取整

round():四舍五入

min() / max():最小值/最大值

下面給出了數字類型的知識點導圖:

最后,我們再看一下,為什么說數字是不可變類型。每種數據類型對應的變量自創建時就會被分配一個內存地址,當該數據類型的對應變量的值發生了改變,那么它對應的內存地址也會發生改變,就稱不可變數據類型。

與不可變類型相對的,當數據類型的對應變量的值發生了改變,它對應的內存地址不發生改變,則稱為可變數據類型。

例如:給變量 num 賦值,然后改變 num 的值,發現前后兩次輸出的變量值都為整型,內存地址發生改變。

id():獲取對象的內存地址

type():查看對象的類型

num = 2 print(id(num), type(num)) num = 3 print(id(num), type(num)) # 輸出 140720244078400 <class 'int'> 140720244078432 <class 'int'>

字符串

1 基本概念

字符串是一個序列,可以使用單引號('')、雙引號("")或三引號(''' ''',""" """)創建。此外,三引號可定義多行字符串。

字符串中可包含轉義字符,如換行(n )、單引號(' )。

非轉義的原始字符串:字符串前加r,例如:print(r'hellonworld'),換行符 n 也會被輸出,而不會產生換行。

unicode 字符串:在字符串前加u,對字符串進行 unicode 編碼。在 Python3 中,字符串默認是 unicode 編碼,中文字符串前無需加u,而對于 Python2,默認編碼是ascii,在中文前需要加u。

2 常用操作

常用操作主要有以下幾點:

  • 字符串拼接/合并
  • 字符串復制
  • 字符串索引/切片
  • 字符串的替換
  • 字符串的匹配查找
  • 去除字符串兩側指定字符
  • 字符串按指定字符分隔
  • 計算字符串的長度
  • 統計指定字符串出現的次數
  • 判斷是否包含指定字符串
  • 字符串轉換大小寫
  • 格式化字符串

下面通過具體示例依次介紹各種操作。

字符串拼接/合并

使用 “+”合并字符串

s = "hello" + " " + "world!" print(s) # 輸出 hello world!

使用 join() 方法:str.join(seq), str為連接符,seq為字符串 或 字符串為元素構成的序列。

s1 = 'python' s2 = ['I', 'love', 'python'] print('_'.join(s1)) print('_'.join(s2)) # 輸出 p_y_t_h_o_n I_love_python

字符串復制

s = 'python' print(s*3) # 輸出 pythonpythonpython

字符串索引/切片

通過下標索引,默認從0開始。

s = 'python' result = s[1] print(result) # 輸出 y

切片 [start:stop:step] start:開始索引,stop:結束索引,step: 步長,默認值為1。

s = 'python' r1 = s[1:] # 從開始索引截取到字符串的最后 r2 = s[:3] # 從開頭截取到結束索引之前 r3 = s[1:3] # 從開始索引截取到結束索引之前 r4 = s[:] # 截取所有字符串 r5 = s[::-1] # 字符串反轉 print('r1=%s, r2=%s, r3=%s, r4=%s, r5=%s'% (r1, r2, r3, r4, r5)) # 格式化輸出 # 輸出 r1=ython, r2=pyt, r3=yt, r4=python, r5=nohtyp

字符串的替換

""" 功能:將字符串str中的子字符串old用新子字符串new替換。 語法:str.replace(old, new[, max]) 參數:str為原始字符串,old為將被替換的子字符串,new為新字符串,max表示最多替換的次數,可選。 返回:返回替換后的新字符串。 """ s1 = 'I love python!' r1 = s1.replace('python', 'java') s2 = 'abcabcabcabc' r2 = s2.replace('ab', 'AB', 3) print(r1) print(r2) # 輸出 I love java! ABcABcABcabc

字符串的匹配查找

""" 功能:檢測字符串中是否包含子字符串 語法:str.find(substr, beg=0, end=len(string)) 參數:substr為待查找的字符串,beg為開始索引,默認為0,end為結束索引,默認為字符串的長度。 返回:如果包含則返回子字符串開始的索引值,否則返回-1。 """ s = 'Always on the road.' r1 = s.find('road', 7, len(s)) r2 = s.find('Road') print(r1, r2) # 輸出 14 -1

與 find() 類似,index() 也可以檢測字符串中是否包含子字符串。不同的是,當查詢不到待匹配的字符串時,會拋出異常。

""" 功能:檢測字符串中是否包含子字符串 語法:str.index(substr, beg=0, end=len(string)) 參數:substr為待查找的字符串,beg為開始索引,默認為0,end為結束索引,默認為字符串的長度。 返回:如果包含子字符串返回開始的索引值,否則拋出異常。 """ s = 'Always on the road.' r1 = s.index('road', 7, len(s)) print(r1) r2 = s.index('Road') # 輸出 14 ValueError: substring not found

去除字符串兩側指定字符

""" 功能:用于移除字符串頭尾指定的字符 語法:str.strip([char]) 參數:chars為待移除的字符序列 返回:移除字符串頭尾指定的字符生成的新字符串。 """ s1 = ' Always on the road.tn' r1 = s1.strip() print(r1) s2 = 'abcdcdab' r2 = s2.strip('ab') print(r2) # 輸出 'Always on the road.' 'cdcd'

與 strip() 類似的還有 lstrip()、rstrip() 兩個函數,lstrip() 用于去掉左側的指定字符,rstrip() 用于去掉右側的指定字符。

字符串按指定字符分隔

""" 功能:通過指定分隔符對字符串進行切片。 語法:str.split(substr="", num=str.count(substr)) 參數:substr為分隔符,默認為所有的空字符,包括空格、換行(n)、制表符(t)等,num為分隔次數,默認為-1,即分隔所有。 返回:返回分割后的字符串列表。 """ s1 = ' Always on the road.tn' r1 = s1.split() print(r1) s2='abcdabcdabcd' r2 = s2.split('c', 2) print(r2) # 輸出 ['Always', 'on', 'the', 'road.'] ['ab', 'dab', 'dabcd']

計算字符串的長度

s = 'Always on the road.' r = len(s) print(r) # 輸出 19

統計指定字符串出現的次數

""" 功能:用于統計字符串里某個字符出現的次數。 語法:str.count(substr, start=0,end=len(str)) 參數:substr為待匹配的子字符串,start和end分別為字符串開始、結束搜索的位置。 返回:返回子字符串在字符串中出現的次數。 """ s = 'Always on the road.' r = s.count('a') print(r) # 輸出 2

判斷是否包含指定字符串

s = 'Always on the road.' print('road' in s) print('road' not in s) # 輸出 True False

字符串轉換大小寫

將每個單詞首字母變為大寫: title()

s = 'I love python!' r = s.title() print(r) # 輸出 I Love Python!

字符串字母全部轉為小寫/大寫: lower()/upper()

s = 'I love python!' r1 = s.lower() r2 = s.upper() print(r1) print(r2) # 輸出 i love python! I LOVE PYTHON!

字符串首字母大寫: capitalize()

s = 'i love python!' r = s.capitalize() print(r) # 輸出 I love python!

大小寫互換: swapcase()

s = 'abcABC' r = s.swapcase() print(r) # 輸出 ABCabc

格式化字符串

%-格式化

""" 格式化符號: %s:格式化字符串 %d:格式化整數 %f:格式化浮點數,可指定小數點后的精度 """ s = ("lin", '1001') print("姓名:%s, 工號:%s"%s) # 輸出 姓名:lin, 工號:1001

str.format()-格式化

# 按默認位置填充 print("{} {}".format("hello", "world") ) # 輸出 hello world # 按位置索引填充 print("{1} {0}".format("world", "hello")) # 輸出 hello world # 通過參數填充 print("姓名:{name}, 學號:{ID}".format(name="張三", ID="1002")) # 輸出 姓名:張三, 學號:1002 # 通過字典設置參數 data = {"name": "張三", "ID": "1002"} print("姓名:{name}, 學號:{ID}".format(**data)) # 輸出 姓名:張三, 學號:1002

f-string 格式化

""" 是Python3.6新引入的一種字符串格式化方法 在形式上是以 f 或 F 修飾符引領的字符串(f'xxx' 或 F'xxx'),以大括號 {} 標明被替換的字段。 在本質上并不是字符串常量,而是一個在運行時運算求值的表達式。 """ # 解析變量 name = "張三" ID = "1002" print(f"姓名: {name}, 學號: {ID}") # 輸出 姓名: 張三, 學號: 1002 # 解析字典 data = {"name": "張三", "ID": "1002"} print(f"姓名: {data['name']}, 學號: {data['ID']}") # 輸出 姓名: 張三, 學號: 1002 # 表達式 s1 = 'hello' s2 = 'world' print(f'{s1+s2}') # 輸出 helloworld

最后,附上字符串相關知識的思維導圖:

—END—

總結

以上是生活随笔為你收集整理的字符串类型的数字比较大小_Python核心知识系列:数字与字符串类型的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲综合婷婷 | 欧美午夜精品久久久久久人妖 | 操操操操操操操操操 | 涩色视频 | 特大黑人巨交吊性xxxx视频 | 国产精品乱码一区二三区小蝌蚪 | 精品一区二区在线观看视频 | 三级黄色视屏 | 用力抵着尿进去了h | 久草手机在线视频 | 久久亚洲少妇 | 少妇伦子伦精品无吗 | 三级黄色片免费观看 | 国产精品高潮呻吟久久久久久 | 亚洲国产网站 | 久久久噜噜噜久久中文字幕色伊伊 | 污污视频网站免费观看 | 加勒比在线免费视频 | 一区二区精彩视频 | 亚洲欧美综合久久 | 在线免费观看黄网站 | 成人免费在线 | 免费拍拍拍网站 | 亚洲精品欧美在线 | 亚洲无码精品一区二区三区 | 99精品视频在线观看免费 | 亚洲欧洲日韩 | 成年人视频免费在线观看 | 国产免费高清 | 久久全国免费视频 | 女人扒开腿让男人捅爽 | 国产乱码精品一区二区三区精东 | 4438成人网| 欧美色资源| 好吊色视频一区二区三区 | 久久久婷婷 | 国产精品主播 | 成人在线视屏 | 日韩毛片视频 | 这里有精品视频 | 少妇流白浆 | 人人玩人人弄 | 午夜一区二区视频 | 国产久草视频 | 午夜偷拍福利视频 | 日韩免费一区二区三区 | 国产三级麻豆 | 免费成人av片 | 欧美成人一二三区 | 精品国产aⅴ麻豆 | 成人深夜在线观看 | 久久成人免费电影 | 男人天堂最新网址 | 亚洲日本色图 | 天天高潮夜夜爽 | 欧美成人免费大片 | xxx日本少妇 | 国产不卡二区 | 亚洲精品小视频 | 国产视频资源 | 亚洲区小说 | 被各种性器调教到哭vk | 香蕉av网 | 午夜影院a | 一本久久久久 | 色片免费看 | 亚洲国产精品欧美久久 | 欧美日韩人妻精品一区 | 日韩一区二区三区视频在线 | 朝鲜女人性猛交 | 日韩一区二区在线看 | 精品动漫一区二区三区 | 亚洲伦理一区 | 老司机免费精品视频 | 午夜影院免费观看 | 俄罗斯黄色大片 | 国产精品亚洲AV色欲三区不卡 | 日韩黄色在线视频 | 丝袜老师让我了一夜网站 | 看av在线 | 亚洲国内精品 | 国产精品久久久一区二区三区 | 91最新地址永久入口 | 精品少妇人妻av免费久久洗澡 | 香蕉久久av一区二区三区 | 亚洲精品国产av | 欧美aⅴ视频 | 国产精品美女在线观看 | 久久激情免费视频 | 日韩av一卡二卡 | 正在播放91| 中国国产毛片 | 一区二区免费视频 | 中国大陆高清aⅴ毛片 | 色综合久久88色综合天天免费 | 玖玖在线精品 | 天天躁夜夜躁狠狠是什么心态 | 久久精品视频一区 | 日韩精品一区二区视频 |