python公約數推導式 Python中各種推導式

2021-10-11 14:55:26 字數 1188 閱讀 5892

python的各種推導式(列表推導式,字典推導式,集合推導式)

列表(list)推導式

字典(dict)推導式

集合(set)推導式

列表推導式

語法:varialbe = [out_exp_res for out_exp in input_list if out_exp == 2]

out_exp_res: 列表生成元素表示式,可以是有返回值的函式

for out_exp in input_list: 迭代input_list將out_exp傳入out_exp_res表示式中

if out_exp == 2: 根據條件過濾掉那些值可以

例1例二,列表推導式中有函式的情況

例三,列表推導式中含有匿名函式的情況就比較複雜了,它得到的不再是乙個數值列表,而是乙個函式列表

如果中括號變成圓括號()得到的就是生成器

multiples = (i for i in range(30) if i % 3 is 0)

print(type(multiples))

# output:

字典推導式

例一: 用字典推導式求乙個字串以及其長度

例二:用字典推導式求乙個字串,以及它的位置下標.

注意: 這裡使用到了python中帶下標的遍歷enumerate()

list1 = ["這", "是", "乙個", "測試"]

# 第乙個是下標,後面的時候對應下標的值.還可以指定從哪個下標開始.

for index, item in enumerate(list1, 1):

print index, item

1 這2 是

3 乙個

4 測試

例三: 大小寫key合併

# encoding:utf-8

__author__ = 'fioman'

__time__ = '2019/3/8 10:08'

mcase =

mcase_frequency =

例一:>> squared =

>> squared

例二 :用集合推導式建立字串長度的集合

>> strings = ['a','is','with','if','file','exception']

>>

注意,元組沒有推導式.因為推導式換成括號的時候,就變成了生成器表示式

python 公倍數,公約數問題

廢話不多說,直接看 輸入兩個數,求兩個數的最大公約數 如 12和8的最大公約數是4,1,先找出兩個數中最小的那個數,2,最小數 找出能被兩個數整除的數 退出迴圈break while true num1 int input 請輸入第乙個數 num2 int input 請輸入第二個數 num3 nu...

最大公約數

1.執行最大公約數的常用演算法,並新增異常處理模組 如輸入非法等 在基礎程式的基礎上,可以考慮手動輸入所有數字或者利用隨機數產生數字,分別加入異常處理模組。注 隨機數的產生方法 srand 的作用是提供乙個種子。然後呼叫rand 其格式為int rand void 它會根據提供給srand 的種子值...

最大公約數

最大公因數 greatest common divisor 也稱最大公約數 最大公因子,指兩個或多個整數共有約數中最大的乙個。a,b的最大公約數記為 a,b 同樣的,a,b,c的最大公約數記為 a,b,c 多個整數的最大公約數也有同樣的記號。求最大公約數有多種方法,常見的有質因數分解法 短除法 輾轉...