python列表解析式如何使用_python列表推导式操作解析
python列表推導式操作解析
這篇文章主要介紹了python列表推導式操作解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
基本格式
?[表達式 for 變量 in 列表] 或者 [表達式 for 變量 in 列表 if 條件]
例子:將a列表中大于5的數*10儲存到b中
一般操作:
a = [5,10,15,20]
b = []
for n in a:
if n > 5:
b.append(n*10)
print(b)
使用推導式可以令代碼簡潔
a = [5,10,15,20]
b = [n*10 for n in a if n > 5] #推導式:生成新的列表,將a中大于5的數*10儲存
print(b) #[100,150,200]
一些其他操作:
ls = [-5,2,12,20]#創建列表
#輸出ls中大于0的數
print([x for x in ls if x > 0])
#[2,12,20]
#應用函數,求絕對值
print([abs[x] for x in ls])
#[5,2,12,20]
#調用函數,轉換大寫
pet = ['Dog','Cat','Fox']
print([newPet.upper() for newPet in pet])
#['DOG','CAT','FOX']
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持我們。
時間: 2019-11-23
本文實例講述了Python學習筆記之列表推導式.分享給大家供大家參考,具體如下: 列表推導式 列表推導式可以快速簡練地創建列表 之前的復雜寫法: capitalized_cities = [] for city in cities: capitalized_cities.append(city.title()) 簡化后的寫法: capitalized_cities = [city.title() for city in cities] 由此可見:借助列表推導式,我們可以使用 for 循環用一步創
本文介紹的是關于Python中列表項的推導式與過濾操作的相關內容,分享出來供大家參考學習,下面來一起看看吧: 典型代碼1: data_list = [1, 2, 3, 4, 0, -1, -2, 6, 8, -9] data_list_copy = [item for item in data_list] print(data_list) print(data_list_copy) 輸出1: [1, 2, 3, 4, 0, -1, -2, 6, 8, -9] [1, 2, 3, 4, 0, -1
列表解析--用來動態地創建列表 [expr for iter_var in iterable if cond_expr] 例子一: map(lambda x: x**2, range(6)) [0, 1, 4, 9, 16, 25] [x**2 for x in range(6)] [0, 1, 4, 9, 16, 25] 列表解析式可以取代內建的map()函數以及lambda,而且++效率更高++. 例子二: seq = [11, 10, 9, 8, 7, 6] filter(lambda x
本文實例講述了Python推導式.分享給大家供大家參考,具體如下: 1. 列表推導式 >>> li = [1,2,3,4,5,6] # 求元素的平方 >>> li_a = [x**2 for x in li ] >>> li_a [1, 4, 9, 16, 25, 36] # 提取偶數值 >>> li_b = [x for x in li if x%2==0] >>> li_b [2, 4, 6] # 將多維數組轉換
本文實例講述了Python列表推導式與生成器表達式用法.分享給大家供大家參考,具體如下: 和列表一樣,列表推導式也采用方括號[]表示,并且用到了一個簡寫版的for循環,第一部分是一個生成結果列表元素的表達式,第二部分是一個輸入表達式上的循環.閱讀理解列表表達式的推薦做法是先從里面的for循環開始,向右查看是否有if條件,然后將推導式開始的那個表達式映射到每一個匹配的元素上去. >>> even_numbers = [x for x in range(10) if x%2 == 0] &g
1.列表推導式書寫形式: [表達式 for 變量 in 列表]??? 或者? [表達式 for 變量 in 列表 if 條件] 2.舉例說明: 復制代碼 代碼如下: #!/usr/bin/python# -*- coding: utf-8 -*- li = [1,2,3,4,5,6,7,8,9]print [x**2 for x in li] print [x**2 for x in li if x>5] print dict([(x,x*10) for x in li]) print? [ (
本文實例講述了Python列表推導式與生成器用法.分享給大家供大家參考,具體如下: 1. 先看兩個列表推導式 def t1(): func1 = [lambda x: x*i for i in range(10)] result1 = [f1(2) for f1 in func1] print result1 def t2(): func2 = [lambda x, i=i: x*i for i in range(10)] result2 = [f2(2) for f2 in func2] pr
本文實例講述了Python列表推導式.字典推導式與集合推導式用法.分享給大家供大家參考,具體如下: 推導式comprehensions(又稱解析式),是Python的一種獨有特性.推導式是可以從一個數據序列構建另一個新的數據序列的結構體. 共有三種推導,在Python2和3中都有支持: 列表(list)推導式 字典(dict)推導式 集合(set)推導式 一.列表推導式 1.使用[]生成list 基本格式 variable = [out_exp_res for out_exp in input_
這篇文章主要介紹了python列表推導式入門學習解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下 一.什么是推導式 推導式是從一個或者多個迭代器快速簡潔地創建數據類型的一種方法,它將循環和條件判斷結合,從而避免語法冗長的代碼,提高代碼運行效率.能熟練使用推導式也可以間接說明你已經超越了python初學者的水平. 報錯 二.條件推導式 1.語法 ''' value1:如果條件表達式condition成立,返回value1 : 如果條件表達式不成
所謂的列表推導式,就是指的輕量級循環創建列表. 基本使用方式 # 創建一個0-10的列表 a = [x for x in range(11)] print(a) """ 輸出結果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] """ 上面的列表推導式等價于下面,只是代碼非常簡化. a = [] for x in range(10): a.append(x) 在循環的過程中使用if # 創建一個1-10之間偶數的列表 a = [x
列表推倒式 [結果 for 變量 in 可迭代對象 if 篩選] 字典推倒式 {結果 for 變量 in 可迭代對象 if 篩選} 結果 => key:value 集合推倒式 {結果 for 變量 in 可迭代對象 if 篩選} 結果 => key 自帶去重功能 列表推導式的執行順序:各語句之間是嵌套關系,左邊第二個語句是最外層,依次往右進一層,左邊第一條語句是最后一層 生成一個存放1-100中個位數為3的數據列表 普通寫法 #生成一個存放1-100中個位數為3的數據列表 # 普通寫法 lis
乍一看到列表推導式你可能會感到疑惑.它們是一種創建和使用列表的簡潔方式.理解列表推導式是有用的,因為你可能在其他人的代碼里看到列表推導式.下面來了解下列表推導式吧. 數字列表的推導式 回顧之前學過的知識,我們可以創建一個包含前10個數字的列表,如下所示: squares = [] for number in range(1,11): new_square = number**2 squares.append(new_square) for square in squares: print(squ
生成器就是自己用python代碼寫的迭代器,生成器的本質就是迭代器. 通過以下兩種方式構建一個生成器: 1.通過生成器函數 2.生成器表達式 生成器函數: 函數 def func1(x): x += 1 return x print(func1(5)) 生成器函數 def func1(x): x += 1 yield x g_obj = func1(5) print(g_obj.__next__()) 一個next對應一個yield. yield VS return return 結束函數,給函
總結
以上是生活随笔為你收集整理的python列表解析式如何使用_python列表推导式操作解析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python连接oracle数据库的方法
- 下一篇: python3 redis_python