原标题:除了画颗“心”,一行Python代码还能干些啥?
报 名
2018年Python课程高校教师高级研修班
课程内容
1. 编程导论——以Python为舟
培养初学者编程能力与兴趣
学习基础Python
重视递归思维求解能力与训练
你可能不知道而你应该知道的Python知识
编程的艺术与神奇
智能是计算出来的
2. Python与机器学习
传统程式VS人工智能
机器学习理论
Python机器学习环境
Python机器(深度)学习实战
3. Python网络爬虫、Python与人工智能
主题一: Python网络爬虫介绍
网络爬虫的流程
网页结构和网络协议
利用requests和BeautifulSoup模块抓取静态网页
利用selenium抓取动态页面
主题二: Python与人工智能
人工智能技术概要
人工智能应用案例
Python在人工智能的应用
案例演示: 聊天机器人
python是真的火!它几乎可以做各个领域各个平台,包括Web开发,网络运维,科学计算,3D游戏开发,图形界面开发,人工智能等。
除了大家熟悉的知乎、豆瓣,已经有越来越多的公司开始用 Python 来快速搭建网站产品。相应的,也有越来越多的公司开设了Python Web的职位。
这么火的Python,只用一行,能够实现哪些好玩的功能呢?
1、一行代码启动一个Web服务
python -m SimpleHTTPServer 8080 # python2
python3 -m http.server 8080 # python3
2、一行代码实现变量值互换
a, b = 1, 2; a, b = b, a
3、一行代码解决FizzBuzz问题
FizzBuzz问题:打印数字1到100, 3的倍数打印“Fizz”, 5的倍数打印“Buzz”, 既是3又是5的倍数的打印“FizzBuzz”
print(' '.join(["fizz"[x % 3 * 4:]+"buzz"[x % 5 * 4:] or str(x) for x inrange(1, 101)]))
4、一行代码输出特定字符”Love”拼成的心形
print('n'.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)]))
5、一行代码输出Mandelbrot图像
Mandelbrot图像:图像中的每个位置都对应于公式N=x+y*i中的一个复数
print('n'.join([''.join(['*'if abs((lambda a: lambda z, c, n: a(a, z, c, n))(lambda s, z, c, n: z
6、一行代码打印九九乘法表
print('n'.join([' '.join(['%s*%s=%-2s' % (y, x, x*y) for y in range(1, x+1)])for x in range(1, 10)]))
7、一行代码计算出1-100之间的素数(两个版本)
print(' '.join([str(item) for item in filter(lambda x: not [x % i for i inrange(2, x) if x % i == 0], range(2, 101))]))
print(' '.join([str(item) for item in filter(lambda x: all(map(lambda p: x % p!= 0, range(2, x))), range(2, 101))]))
8、一行代码输出斐波那契数列
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)]])
9、一行代码实现快排算法
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:]))) orarr
10、一行代码解决八皇后问题
[__import__('sys').stdout.write('n'.join('.' * i + 'Q' + '.' * (8-i-1) for iin vec) + "n========n") for vec in__import__('itertools').permutations(range(8)) if 8 == len(set(vec[i]+i for iin range(8))) == len(set(vec[i]-i for i in range(8)))]
11、一行代码实现数组的flatten功能:将多维数组转化为一维
flatten = lambda x: [y for l in x for y in flatten(l)] if isinstance(x, list)else [x]
12、一行代码实现list, 有点类似与上个功能的反功能
array = lambda x: [x[i:i+3] for i in range(0, len(x), 3)]
13、一行代码实现求解2的1000次方的各位数之和
print(sum(map(int, str(2**1000))))
-END-
图文来自网络、如涉及版权问题,请联系我们以便处理。文章内容纯属作者个人观点,不代表本网观点。返回搜狐,查看更多
责任编辑: