Python 编程练习 1

 for / while/ 列表推导式

列表推导式,是一种简洁、优美的语法,如果for/while/if-else是白话文,那推导式就是四字成语,逻辑的高度浓缩和表达,非常性感

(258条消息) PYTHON-列表推导式_Justin_cx的博客-CSDN博客_python 列表推导式

'''
给定两个列表,用字典的形式表达出来,并在控制台打印
'''
#历史上有很多编程语言,他们在编程语言发展的过程中都起到过重要的作用。
#下面的 Python 数组包含了历史上的大部分编程语言。

languages = ["Regional Assembly Language","Autocode","FORTRAN",\
             "IPL (LISP的先驱)","FLOW-MATIC (COBOL的先驱)",\
             "COMTRAN (COBOL的先驱)","LISP","ALGOL 58","FACT (COBOL的先驱)",\
             "COBOL","APL","Simula","SNOBOL","CPL (C的先驱)","BASIC","PL/I",\
             "BCPL (C的先驱)","Logo","Pascal","Forth","C语言","Smalltalk",\
             "Prolog","ML","Scheme","SQL","Ada","C++","Common Lisp","MATLAB",\
             "Eiffel","Objective-C","Erlang","Perl","Tcl","FL (Backus)","Haskell",\
             "Python","Visual Basic","HTML","Ruby","Lua","CLOS (part of ANSI Common Lisp)",\
             "Java","Delphi (Object Pascal)","JavaScript","PHP","REBOL","D","C#",\
             "Visual Basic .NET","F#","Scala","Factor","Windows PowerShell","Rust","Clojure","Go"]
# 字典太长,使用反斜杠 \ 来做处理
             
years = [1951, 1952, 1954, 1954, 1955, 1957, 1958, 1958, 1959, 1959, 1962,\
         1962, 1962, 1963, 1964, 1964, 1967 ,1968 ,1970 ,1970 ,1972 ,1972 ,\
         1972 ,1973 ,1975 ,1978 ,1980 ,1983 ,1984 ,1984 ,1985 ,1986 ,1986 ,\
         1987 ,1988 ,1989 ,1990 ,1991 ,1991 ,1991 ,1993 ,1993 ,1994 ,1995 ,\
         1995 ,1995 ,1995 ,1997 ,1999 ,2001 ,2001 ,2002 ,2003 ,2003 ,2006 ,\
         2006 ,2007 ,2009]

# 可以知道是一一对应的,且长度相等
result = {}
for i in range(len(languages)):
    result[languages[i]] = years[i]
i=0
for k, v in result.items():
   i=i+1
   print(str(i) +" "+ k + " : " + str(v)) 
 
print("***")
# while循环
k = 0
while k< len(years):
    print(languages[k],":",years[k])
    k = k + 1

# 列表推导式
[print(languages[i],':',years[i]) for i in range(len(languages))]

返回值:
1 Regional Assembly Language : 1951
2 Autocode : 1952
3 FORTRAN : 1954
4 IPL (LISP的先驱) : 1954
5 FLOW-MATIC (COBOL的先驱) : 1955
6 COMTRAN (COBOL的先驱) : 1957
7 LISP : 1958
8 ALGOL 58 : 1958
9 FACT (COBOL的先驱) : 1959
10 COBOL : 1959
11 APL : 1962
12 Simula : 1962
13 SNOBOL : 1962
14 CPL (C的先驱) : 1963
15 BASIC : 1964
16 PL/I : 1964
17 BCPL (C的先驱) : 1967
18 Logo : 1968
19 Pascal : 1970
20 Forth : 1970
21 C语言 : 1972
22 Smalltalk : 1972
23 Prolog : 1972
24 ML : 1973
25 Scheme : 1975
26 SQL : 1978
27 Ada : 1980
28 C++ : 1983
29 Common Lisp : 1984
30 MATLAB : 1984
31 Eiffel : 1985
32 Objective-C : 1986
33 Erlang : 1986
34 Perl : 1987
35 Tcl : 1988
36 FL (Backus) : 1989
37 Haskell : 1990
38 Python : 1991
39 Visual Basic : 1991
40 HTML : 1991
41 Ruby : 1993
42 Lua : 1993
43 CLOS (part of ANSI Common Lisp) : 1994
44 Java : 1995
45 Delphi (Object Pascal) : 1995
46 JavaScript : 1995
47 PHP : 1995
48 REBOL : 1997
49 D : 1999
50 C# : 2001
51 Visual Basic .NET : 2001
52 F# : 2002
53 Scala : 2003
54 Factor : 2003
55 Windows PowerShell : 2006
56 Rust : 2006
57 Clojure : 2007
58 Go : 2009

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

心灵流浪者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值