wordpress免费企业站主题, 天堂中文在线,查看网站dns,设计师网站大全手头有 109 张头部 CT 的断层扫描图片#xff0c;我打算用这些图片尝试头部的三维重建。基础工作之一#xff0c;就是要把这些图片数据读出来#xff0c;组织成一个三维的数据结构#xff08;实际上是四维的#xff0c;因为每个像素有 RGBA 四个通道#xff09;。 这个…手头有 109 张头部 CT 的断层扫描图片我打算用这些图片尝试头部的三维重建。基础工作之一就是要把这些图片数据读出来组织成一个三维的数据结构实际上是四维的因为每个像素有 RGBA 四个通道。 这个数据结构自然是 numpy 的 ndarray 对象读取图像文件我习惯使用 PIL。因此需要导入两个模块
import numpy as npfrom PIL import Image
接下来我用一行代码就把 109 张图片读到了一个 109x256x256x4 的 numpy 数组中耗时 172 毫秒
data np.stack([np.array(Image.open(head%d.png%i)) for i in range(109)], axis0)
通常上面这一行代码应该写成这样
data list()for i in range(109): img Image.open(head%d.png%i) img np.array(img) data.append(img)data np.stack(data, axis0)
我把这些代码写成一行却毫无晦涩艰深之感仍然像诗歌一样优美、像自然语言一样通俗
那一刻我脑洞大开很想知道 python 高手们只用一行代码都能干些什么当然限定条件是不能引用自定义的模块可以使用内置模块或通用的第三方模块。上网一搜发现这个问题好像是 python 的专属问题其他语言很难用一行代码做点什么。知乎上有一篇名为《一行 Python 能实现什么丧心病狂的功能》的帖子其镜像贴只有 java 的和 js 的点进去发现和 python 的完全不是一个概念。
整理了一下知乎上这篇文章的内容颇觉有趣分享给大家。
这里插播一条粉丝福利如果你正在学习Python或者有计划学习Python想要突破自我对未来十分迷茫的可以点击这里获取最新的Python学习资料和学习路线规划免费分享记得关注
1. 一行代码打印乘法口诀
print(\n.join([ .join([%2s x%2s %2s%(j,i,i*j) for j in range(1,i1)]) for i in range(1,10)])) 2. 一行代码打印迷宫
print(.join(__import__(random).choice(\u2571\u2572) for i in range(50*24))) 3. 一行代码表白爱情
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 0else ) for x in range(-30, 30)]) for y in range(30, -30, -1)])) 4. 一行代码打印小龟龟
print(\n.join([.join([* if abs((lambda a:lambda z,c,n:a(a,z,c,n))(lambda s,z,c,n:z if n0 else s(s,z*zc,c,n-1))(0,0.02*x0.05j*y,40))2 else for x in range(-80,20)]) for y in range(-20,20)])) 你在 python 使用过程中用一行代码实现过哪些激动人心的功能呢欢迎留言讨论。
最后分享一下以前做的一个圣诞树源代码
import turtle
screen turtle.Screen()screen.setup(375, 700)
circle turtle.Turtle()circle.shape(circle)circle.color(red)circle.speed(fastest)circle.up()
square turtle.Turtle()square.shape(square)square.color(green)square.speed(fastest)square.up()
circle.goto(0, 280)circle.stamp()
k 0for i in range(1, 13): y 30 * i for j in range(i - k): x 30 * j square.goto(x, -y 280) square.stamp() square.goto(-x, -y 280) square.stamp()if i % 4 0: x 30 * (j 1) circle.color(red) circle.goto(-x, -y 280) circle.stamp() circle.goto(x, -y 280) circle.stamp() k 3if i % 4 3: x 30 * (j 1) circle.color(yellow) circle.goto(-x, -y 280) circle.stamp() circle.goto(x, -y 280) circle.stamp()
square.color(brown)for i in range(13, 17): y 30 * i for j in range(2): x 30 * j square.goto(x, -y 280) square.stamp() square.goto(-x, -y 280) square.stamp()
效果 最后我精心筹备了一份全面的Python学习大礼包完全免费分享给每一位渴望成长、希望突破自我现状却略感迷茫的朋友。无论您是编程新手还是希望深化技能的开发者都欢迎加入我们的学习之旅共同交流进步 学习大礼包包含内容
Python全领域学习路线图一目了然指引您从基础到进阶再到专业领域的每一步学习路径明确各方向的核心知识点。
超百节Python精品视频课程涵盖Python编程的必备基础知识、高效爬虫技术、以及深入的数据分析技能让您技能全面升级。
实战案例集锦精选超过100个实战项目案例从理论到实践让您在解决实际问题的过程中深化理解提升编程能力。
华为独家Python漫画教程创新学习方式以轻松幽默的漫画形式让您随时随地利用碎片时间也能高效学习Python。
互联网企业Python面试真题集精选历年知名互联网企业面试真题助您提前备战面试准备更充分职场晋升更顺利。 立即领取方式只需【点击这里】即刻解锁您的Python学习新篇章让我们携手并进在编程的海洋里探索无限可能