-
print(a and 0 or 99) # ==> 99
這里沒有none???查看全部 -
計算用變量
ww=67
JZN=673
print(ww+JZN)
輸出:
750查看全部 -
and運算是與運算,只有所有都為 True,and運算結(jié)果才是 True。
or運算是或運算,只要其中有一個為 True,or 運算結(jié)果就是 True。
not運算是非運算,它是一個單目運算符,把 True 變成 False,F(xiàn)alse 變成 True。查看全部 -
python二進制
0b做前綴,只使用0和1表示二進制;
如:0b0110,0b1100
python十六進制
0x做前綴,只使用0~9和abcdef表示十六進制;
如:0x12ef,0xde2341af
python浮點數(shù)
把10用e替代
如:1.23x10^9就是1.23e9或12.3e8
? ? ? ?0.000012就是1.2e-5
整數(shù)運算永遠精確,浮點運算四舍五入有誤差
空值None
查看全部 -
set提供了add()方法,我們可以使用add()方法,往set里面添加元素
對于set,如果添加一個已經(jīng)存在的元素,不會報錯,也不會改變什么
查看全部 -
由于set里面的元素是沒有順序的,因此我們不能像list那樣通過索引來訪問。訪問set中的某個元素實際上就是判斷一個元素是否在set中,這個時候我們可以使用in來判斷某個元素是否在set中
set元素是區(qū)分大小寫的,必須大小寫完全匹配,才能判斷該元素在set里面
查看全部 -
set和list類似,擁有一系列元素,但是set和list不一樣,set里面的元素是不允許重復(fù)的,而list里面可以包含相同的元素;set與list的另一個區(qū)別是,set里面的元素是沒有順序的
查看全部 -
如果一個字符串包含很多需要轉(zhuǎn)義的字符,對每一個字符都進行轉(zhuǎn)義會很麻煩。為了避免這種情況,我們可以在字符串前面加個前綴r,表示這是一個?raw?字符串,里面的字符就不需要轉(zhuǎn)義了
但是r'...'表示法不能表示多行字符串,也不能表示包含'和?"的字符串
如果要表示多行字符串,可以用'''...'''?
?'''Line 1
Line 2
Line 3'''查看全部 -
Python把0、空字符串和None看成False,其他數(shù)值和非空字符串都看成True
查看全部 -
以上文本是一段Python代碼,主要展示了如何使用Python的type()函數(shù)來查詢不同數(shù)據(jù)類型的對象。以下是對這段代碼的詳細解釋:
print(type(3.1415926))
這行代碼使用了type()函數(shù)來查詢數(shù)字3.1415926的數(shù)據(jù)類型。
3.1415926是一個浮點數(shù)(float)。
輸出結(jié)果將是<class 'float'>。
print(type('learn python in imooc'))
這行代碼使用type()函數(shù)來查詢字符串'learn python in imooc'的數(shù)據(jù)類型。
'learn python in imooc'是一個字符串(str)。
輸出結(jié)果將是<class 'tr'>。
print(type(100))
這行代碼使用type()函數(shù)來查詢數(shù)字100的數(shù)據(jù)類型。
100是一個整數(shù)(int)。
輸出結(jié)果將是<class 'int'>。
print(type(0b1101))
這行代碼使用type()函數(shù)來查詢數(shù)字0b1101的數(shù)據(jù)類型。
0b1101是一個二進制數(shù)表示的整數(shù)(int)。
輸出結(jié)果將是<class 'int'>。
總結(jié),這段代碼通過type()函數(shù)演示了Python中不同類型的數(shù)據(jù),包括浮點數(shù)、字符串、整數(shù)以及二進制表示的整數(shù)。
查看全部 -
在Python中,布爾類型還可以與其他數(shù)據(jù)類型(字符串,數(shù)字等)做 and、or和not運算,請看下面的代碼:
a = True
print(a and 0 or 99) # ==> 99
得到的計算結(jié)果不是布爾類型,而是數(shù)字99,這是為什么呢?
因為Python把0、空字符串和None看成False,其他數(shù)值和非空字符串都看成True,所以:
True and 0計算結(jié)果是0
繼續(xù)計算0 or 99計算結(jié)果是 99
因此,結(jié)果是99。
需要注意的是,not計算的優(yōu)先級是高于and和or的。
True and not False # ==> True
在上述布爾計算中,先計算not False = True,然后再計算True and True,因此得到True的結(jié)果。
短路計算
在計算a and b時,如果 a 是 False,則根據(jù)與運算法則,整個結(jié)果必定為 False,因此返回 a;如果 a 是 True,則整個計算結(jié)果必定取決與 b,因此返回 b。
在計算a or b時,如果 a 是 True,則根據(jù)或運算法則,整個計算結(jié)果必定為 True,因此返回 a;如果 a 是 False,則整個計算結(jié)果必定取決于 b,因此返回 b。
所以Python解釋器在做布爾運算時,只要能提前確定計算結(jié)果,它就不會往后算了,直接返回結(jié)果。查看全部 -
num = 10 / 3
print(num) # ==> 3.3333333333333335
# 使用round保留兩位小數(shù)
round(num, 2) # ==> 3.33查看全部 -
count()方法用來統(tǒng)計tuple中某個元素出現(xiàn)的次數(shù)。print(T.count(1))
index()方法可以返回指定元素的下標,當一個元素多次重復(fù)出現(xiàn)時,則返回第一次出現(xiàn)的下標位置。T = (1, 1, 2, 2, 3, 3, 1, 3, 5, 7, 9)
T.index(9) # ==> 10
T.index(5) # ==> 8
T.index(1) # ==> 0查看全部 -
pop()方法默認刪除列表的最后一個元素,并返回。例如A=B.pop().
pop()方法,除了可以刪除最后一個元素以外,pop()還可以接收一個參數(shù),指定需要刪除的元素的位置。
查看全部 -
append()方法總是將元素添加到list的尾部.例如names.append('Candy')
insert()方法需要兩個參數(shù),分別是需要插入的位置,以及需要插入的元素。例如names.insert(2, 'Candy')
查看全部 -
List 有序 可重復(fù)
set 無序 不可重復(fù)
查看全部 -
這是一個Python編程腳本,用于根據(jù)輸入的年齡值判斷并打印出相應(yīng)的年齡階段。代碼中首先定義了一個變量age并賦值為15,然后使用一個if-else語句來判斷age是否大于17,如果是,則定義一個字符串a(chǎn)為'adult,{}',其中{}是一個占位符,用于后續(xù)填充具體的年齡值;接著使用format()方法將age變量的值插入到占位符位置,并打印輸出結(jié)果。如果age不大于17,則定義字符串a(chǎn)為'teenage,{}',同樣使用format()方法插入年齡值并打印。
由于代碼中age的值為15,不大于17,因此最終會輸出:
Unknown
teenage,15
查看全部 -
這是一個Python編程腳本,用于檢查一個人的年齡是否達到成年標準,并打印相關(guān)信息。
第一行# Enter a code是一個注釋行,用于提醒讀者以下內(nèi)容是代碼。
第二行age = 19定義了一個變量age并將其賦值為19。
第三行if age>=18:開始一個條件判斷語句,檢查age是否大于或等于18。
第四行print('adult', age)在條件滿足時打印字符串'adult'和變量的值age。
第五行print('your age = {}'.format(age))打印一條消息,其中包含字符串'your age is'和變量的值age。
第六行print('adult')再次打印字符串'adult'。
第七行是空行,表示代碼塊的結(jié)束。
如果運行這個腳本,因為age被定義為19,所以條件age>=18為真,腳本會輸出:
Unknown
adult 19
your age = 19
adult
查看全部 -
這一段Python代碼中包含了多個print語句,用于輸出不同的字符串。這些字符串中包含了中英文混合的文本,并且展示了Python中字符串格式化的不同方式。以下是對每個print語句的詳細解釋:
第一個print語句:
python
print('這是一句中英文混合的Python字符串:Hello World!"')
這個語句會輸出以下文本:
Unknown
這是一句中英文混合的Python字符串:Hello World!"
這里展示了在Python字符串中可以直接包含中文和英文字符。
第二個print語句:
python
print('這是一句中英文混合的Python字符串:\n{}'.format('Hello World!'))
這個語句會輸出以下文本:
Unknown
這是一句中英文混合的Python字符串:
Hello World!
這里使用了\n來創(chuàng)建一個新行,使得"Hello World!"顯示在新的一行。{}是字符串格式化的一種方式,format函數(shù)中的字符串會替換{}中的內(nèi)容。
第三個print語句:
python
print('學習Python是一件很有趣的事兒:{0},{1},{2}'.format('simple','efficient','inexpensive.'))
這個語句會輸出以下文本:
Unknown
學習Python是一件很有趣的事兒:simple,efficient,inexpensive.
這里使用了{0}、{1}和{2}來指定字符串中插入的位置,分別對應(yīng)format函數(shù)中提供的第一個、第二個和第三個參數(shù)。
第四個print語句:
python
print('學習Python是一件很有趣的事兒:{2},{1},{0}'.format('simple','efficient','inexpensive.'))
這個語句會輸出以下文本:
Unknown
學習Python是一件很有趣的事兒:inexpensive.,efficient,simple
這里展示了可以通過在{}中指定數(shù)字來改變插入?yún)?shù)的順序。
第五個print語句:
python
print('學習Python是一件很有趣的事兒:{a},,{c}'.format(b='simple',a='efficient',c='inexpensive.'))
這個語句會輸出以下文本:
Unknown
學習Python是一件很有趣的事兒:efficient,simple,inexpensive.
這里使用了命名參數(shù)的方式,在{}中指定了參數(shù)的名稱,然后在format函數(shù)中通過關(guān)鍵字參數(shù)來傳遞這些值。這樣可以更加靈活地指定字符串中插入的內(nèi)容和順序。
查看全部 -
字符串模板的使用和格式化輸出
在Python中,我們可以使用字符串模板來生成動態(tài)的字符串。字符串模板是一種包含占位符的字符串,這些占位符可以在后續(xù)的過程中被具體的值替換。下面我們將詳細解釋字符串模板的使用方法,并通過示例進行說明。
基本使用
字符串模板的基本使用方法是通過format函數(shù)將模板數(shù)據(jù)填充到模板字符串中。例如:
python
template = '林 {}'? ? # 定義一個字符串模板,其中'{}'是占位符
a = '書豪'? ? ? ? ? ?# 定義模板數(shù)據(jù)
result = template.format(a)? ?# 使用format函數(shù)將數(shù)據(jù)填充到模板中
print(result)? ? ? ? ?# 輸出結(jié)果:林書豪
在這個例子中,'林 {}'是一個模板,'書豪'是要填充到模板中的數(shù)據(jù)。format(a)函數(shù)調(diào)用會將a變量的值填充到模板的{}位置,生成一個新的字符串'林書豪'。
指定順序
在模板中,我們可以指定占位符的填充順序。通過在{}中寫入數(shù)字索引來實現(xiàn)這一點。例如:
python
template = 'hello {0}, hello {1}, hello {2}, hello {3}'??
result = template.format('world', 'china', 'beijing', 'imooc')
print(result)? # 輸出:hello world, hello china, hello beijing, hello imooc
在這個例子中,{0}會被'world'替換,{1}會被'china'替換,以此類推。
調(diào)整順序
我們還可以改變填充的順序,例如:
python
template = '林 {1}, 林 {2}, 林 {3}, 林 {0}.'??
result = template.format('書豪', '國豪', '俊杰', '妙可')
print(result)? # 輸出:林 國豪, 林 俊杰, 林 妙可, 林 書豪.
這里{1}對應(yīng)的是第二個參數(shù)'國豪',以此類推。
指定對應(yīng)的名字
除了使用數(shù)字索引,我們還可以使用命名參數(shù)來指定占位符對應(yīng)的值。例如:
python
template = 'hello {m}, hello {w}, hello {h}, hello {y}.'??
meixi = 'eixi'
wujiayu = 'wujiayu'
huangshang = 'huangshang'
yazi = 'yazi'
result = template.format(m=meixi, w=wujiayu, h=huangshang, y=yazi)
print(result)? # 輸出:hello meixi, hello wujiayu, hello huangshang, hello yazi.
在這個例子中,{m}會被變量meixi的值替換,{w}會被wujiayu的值替換,以此類推。
復(fù)雜的指定對應(yīng)名字
在指定對應(yīng)名字時,模板中的順序和變量的賦值順序可以不同,Python會根據(jù)指定的參數(shù)名來填充值。例如:
python
template = '3 {w}, 0 {c}, 2 , 1 {i}.'??
c = 'www'
w = 'ccc'
b = 'bbb'
i = 'iii'
result = template.format(b=c, c=w, w=i, i=w)
print(result)? # 輸出:3 iii, 0 ccc, 2 www, 1 ccc
在這個例子中,雖然template中{w}在第一個位置,但是通過w=i的賦值,實際填充的是變量i的值'iii'。
通過以上的例子,我們可以看到字符串模板在Python中的靈活使用,可以根據(jù)不同的需求來動態(tài)生成字符串。
查看全部 -
以上文本是一段Python代碼,主要展示了如何使用Python的type()函數(shù)來查詢不同數(shù)據(jù)類型的對象。以下是對這段代碼的詳細解釋:
print(type(3.41415926)): 這行代碼使用了type()函數(shù)來查詢數(shù)字3.41415926的數(shù)據(jù)類型,并使用print()函數(shù)輸出結(jié)果。3.41415926是一個浮點數(shù)(float),因此輸出將是<class 'float'>。
print(type('Learn python imooc')): 這行代碼查詢了字符串'Learn python imooc'的數(shù)據(jù)類型,并輸出結(jié)果。由于'Learn python imooc'是一個字符串(str),所以輸出將是<class 'tr'>。
print(type(100)): 這行代碼查詢了整數(shù)100的數(shù)據(jù)類型,并輸出結(jié)果。100是一個整數(shù)(int),所以輸出將是<class 'int'>。
print(type(0b1101)): 這行代碼查詢了二進制數(shù)0b1101的數(shù)據(jù)類型,并輸出結(jié)果。0b1101是一個二進制表示的整數(shù),同樣屬于整數(shù)類型(int),所以輸出將是<class 'int'>。
綜上所述,這段代碼通過type()函數(shù)演示了Python中不同類型的數(shù)據(jù),包括浮點數(shù)、字符串和整數(shù),并且展示了如何輸出這些數(shù)據(jù)類型的信息。
查看全部 -
def info(**kwargs):? ? ? ? ? ? ? ?# 1. 使用 **kwargs 接收任意數(shù)量的關(guān)鍵字參數(shù)
? ? names = kwargs['names']? ? ? ? # 2. 從字典中提取鍵為 'names' 的值(姓名列表)
? ? gender_list = kwargs['gender'] # 3. 提取鍵 'gender' 的值(性別列表)
? ? age_list = kwargs['age']? ? ? ?# 4. 提取鍵 'age' 的值(年齡列表)
? ? index = 0? ? ? ? ? ? ? ? ? ? ? # 5. 初始化索引,用于遍歷列表
? ? for name in names:? ? ? ? ? ? ?# 6. 遍歷姓名列表中的每個名字
? ? ? ? gender = gender_list[index] # 7. 按當前索引獲取性別
? ? ? ? age = age_list[index]? ? ? # 8. 按當前索引獲取年齡
? ? ? ? # 9. 格式化輸出當前人員信息
? ? ? ? print('name: {}, gender: {}, age: {}'.format(name, gender, age))
? ? ? ? index += 1? ? ? ? ? ? ? ? ?# 10. 索引自增,指向下一項
查看全部 -
因此,要定義只有一個元素的tuple,需要在元素后面添加一個逗號,。
查看全部 -
tuple 元組 和 list 一樣,是有序容器。元組和列表之間可以互相轉(zhuǎn)化
定義元組的方式是使用小括號()將元組內(nèi)的元素括起來。
L = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
print(L) # ==> ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
T = tuple(L)
print(T) # ==> ('Alice', 'Bob', 'Candy', 'David', 'Ellena')T = ('Alice', 'Bob', 'Candy', 'David', 'Ellena')
print(T) # ==> ('Alice', 'Bob', 'Candy', 'David', 'Ellena')
L = list(T)
print(L) # ==> ['Alice', 'Bob', 'Candy', 'David', 'Ellena']但是,tuple和list不一樣的是,tuple是固定不變的,一旦變成tuple,tuple中的每一個元素都不可被改變,同時也不能再往tuple中添加數(shù)據(jù),而list是可以的。
T = ('Alice', 'Bob', 'Candy', 'David', 'Ellena')
# 替換元素
T[1] = 'Boby'
# 報錯
Traceback (most recent call last):
?File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment查看全部
舉報