自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

1 行Python代碼能干哪些事,這 13個你知道嗎?

開發(fā) 后端
從“The Zen of Python”也能看出,Python倡導(dǎo)Beautiful、Explicit、Simple等原則,當(dāng)然我們接下來要介紹的一行Python能實(shí)現(xiàn)哪些好玩的功能,可能和Explicit原則相違背。

 [[264460]]

首先你要了解一下Python之禪,一行代碼輸出“The Zen of Python”:

  • python -c "import this"
  • """
  • The Zen of Python, by Tim Peters
  • Beautiful is better than ugly.
  • Explicit is better than implicit.
  • Simple is better than complex.
  • Complex is better than complicated.
  • Flat is better than nested.
  • Sparse is better than dense.
  • Readability counts.
  • Special cases aren t special enough to break the rules.
  • Although practicality beats purity.
  • Errors should never pass silently.
  • Unless explicitly silenced.
  • In the face of ambiguity, refuse the temptation to guess.
  • There should be one-- and preferably only one --obvious way to do it.
  • Although that way may not be obvious at first unless you re Dutch.
  • Now is better than never.
  • Although never is often better than *right* now.
  • If the implementation is hard to explain, it s a bad idea.
  • If the implementation is easy to explain, it may be a good idea.
  • Namespaces are one honking great idea -- let s do more of those!
  • """

從“The Zen of Python”也能看出,Python倡導(dǎo)Beautiful、Explicit、Simple等原則,當(dāng)然我們接下來要介紹的一行Python能實(shí)現(xiàn)哪些好玩的功能,可能和Explicit原則相違背。

如果你有其他這方面的小例子,也歡迎評論,我會加到文章中,文章也許會長期更新。

1. 一行代碼啟動一個Web服務(wù)

  1. python -m SimpleHTTPServer 8080 # python2 
  2. python3 -m http.server 8080 # python3 

 

 

1 行Python代碼能干哪些事,這 13個你知道嗎?

 

2. 一行代碼實(shí)現(xiàn)變量值互換

  1. a, b = 1, 2; a, b = b, a 

3. 一行代碼解決FizzBuzz問題

FizzBuzz問題:打印數(shù)字1到100, 3的倍數(shù)打印“Fizz”, 5的倍數(shù)打印“Buzz”, 既是3又是5的倍數(shù)的打印“FizzBuzz”

  1. for x in range(1, 101): print("fizz"[x % 3 * 4:]+"buzz"[x % 5 * 4:] or x) 

4. 一行代碼輸出特定字符”Love”拼成的心形

  1. print( .join([ .join([( Love [(x-y) % len( Love )] if ((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3 <= 0 else ) for x in range(-30, 30)]) for y in range(30, -30, -1)])) 

 

 

1 行Python代碼能干哪些事,這 13個你知道嗎?

 

 

5. 一行代碼輸出Mandelbrot圖像

Mandelbrot圖像:圖像中的每個位置都對應(yīng)于公式N=x+y*i中的一個復(fù)數(shù)

  1. print( .join([ .join([ * if abs((lambda a: lambda z, c, n: a(a, z, c, n))(lambda s, z, c, n: z if n == 0 else s(s, z*z+c, c, n-1))(0, 0.02*x+0.05j*y, 40)) < 2 else for x in range(-80, 20)]) for y in range(-20, 20)])) 

 

[[264461]]

 

6. 一行代碼打印九九乘法表

  1. print( .join([ .join([ %s*%s=%-2s % (y, x, x*y) for y in range(1, x+1)]) for x in range(1, 10)])) 

7. 一行代碼計(jì)算出1-100之間的素數(shù)(兩個版本)

  1. print( .join([str(item) for item in filter(lambda x: not [x % i for i in range(2, x) if x % i == 0], range(2, 101))])) 
  2. print( .join([str(item) for item in filter(lambda x: all(map(lambda p: x % p != 0, range(2, x))), range(2, 101))])) 

 

1 行Python代碼能干哪些事,這 13個你知道嗎?

 

 

8. 一行代碼輸出斐波那契數(shù)列

  1. print([x[0] for x in [(a[i][0], a.append([a[i][1], a[i][0]+a[i][1]])) for a in ([[1, 1]], ) for i in range(30)]]) 

 

 

1 行Python代碼能干哪些事,這 13個你知道嗎?

 

 

9. 一行代碼實(shí)現(xiàn)快排算法

  1. qsort = lambda arr: len(arr) > 1 and qsort(list(filter(lambda x: x <= arr[0], arr[1:]))) + arr[0:1] + qsort(list(filter(lambda x: x > arr[0], arr[1:]))) or arr 

10. 一行代碼解決八皇后問題

  1. [__import__( sys ).stdout.write( .join( . * i + Q + . * (8-i-1) for i in vec) + "========"for vec in __import__( itertools ).permutations(range(8)) if 8 == len(set(vec[i]+i for i in range(8))) == len(set(vec[i]-i for i in range(8)))] 

11. 一行代碼實(shí)現(xiàn)數(shù)組的flatten功能: 將多維數(shù)組轉(zhuǎn)化為一維

  1. flatten = lambda x: [y for l in x for y in flatten(l)] if isinstance(x, list) else [x] 

12. 一行代碼實(shí)現(xiàn)list, 有點(diǎn)類似與上個功能的反功能

  1. array = lambda x: [x[i:i+3] for i in range(0, len(x), 3)] 

13. 一行代碼實(shí)現(xiàn)求解2的1000次方的各位數(shù)之和

  1. print(sum(map(int, str(2**1000)))) 

 

 

責(zé)任編輯:武曉燕 來源: 今日頭條
相關(guān)推薦

2021-11-17 11:03:14

Python代碼語法

2017-10-26 13:40:11

Python一行代碼

2020-09-11 06:39:29

ThreadLocal線程

2023-07-04 08:48:24

靜態(tài)代碼分析工具

2024-08-08 09:15:08

SQL代碼復(fù)制表

2020-08-17 09:31:31

Git命令開發(fā)

2021-11-12 23:41:27

Windows 11Windows微軟

2023-04-26 10:06:08

RocketMQ屬性Consumer

2021-04-06 11:30:50

疫情IT架構(gòu)CIO

2024-05-16 08:26:24

開發(fā)技巧項(xiàng)目

2020-04-06 09:10:15

Python列表理解開發(fā)

2021-09-19 22:51:49

iPhone手機(jī)iOS

2022-04-11 08:20:36

編程輔助工具GitHubCopilot

2024-11-26 14:29:48

2022-06-30 13:41:44

SQL 語句group by

2024-02-19 08:01:59

服務(wù)微服務(wù)授權(quán)

2023-12-04 08:11:16

Oracle數(shù)據(jù)庫

2015-10-23 09:34:16

2025-01-26 10:49:52

2022-08-02 06:55:35

移動設(shè)備Android
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號