Python是一种以直接的语法和高效能而闻名的编程语言,它在初学者和专家程序员中都非常受欢迎。其设计强调可读性和简洁性,使开发者能够用更少的代码行数表达复杂的想法,不仅提高了代码的可读性,还提高了其维护性和性能。
Python的哲学:少即是多Python的核心哲学在《Python之禅》(PEP 20)中得到了体现,它提倡在编程中追求简单和直接。Python的语法和标准库旨在促进清晰、简洁的编码。这一哲学鼓励开发者用更少、更可读的代码行实现更多功能,使代码库更易于理解和维护。
促进简洁性的一些关键特性列表推导:提供了一种紧凑的列表处理方式。通过结合迭代、过滤和转换元素,列表推导允许在一个可读的代码行中完成大量工作。
Lambda函数:匿名函数在高阶函数(如map和filter)中使用短暂、临时函数时特别有用。
内置函数和模块:内置函数(如map、filter)和模块(如itertools)提供了强大但简洁的数据操作方式。
with语句:简化了像文件流这样的资源管理,确保资源以最少的代码得到妥善管理和释放。
代码示例:用更少的代码做更多的事示例 1:生成斐波那契序列
任务:生成斐波那契序列的前10个数字。
def fibonacci(n): sequence = [0, 1] for _ in range(2, n): sequenceend(sequence[-1] + sequence[-2]) return sequenceprint(fibonacci(10))
这个函数优雅地生成了斐波那契序列,并且考虑了可读性。
示例 2:优雅的文件数据提取
任务:提取文本文件每行的第一个单词。
first_words = []with open('file.txt') as file: for line in file: first_wordsend(line.split()[0])
一种清晰简洁的从文件中提取数据的方法。
示例 3:一行代码实现字典反转
任务:在一行代码内反转字典中的键和值。
def invert_dict(original_dict): return {value: key for key, value in original_dict.items()}inverted_dict = invert_dict({'a': 1, 'b': 2})
使用推导式进行简单易读的字典反转。
示例 4:实现迷你计算器
任务:创建一个基本算术运算的迷你计算器。
def calculate(op, a, b): operations = {"+": a + b, "-": a - b, "*": a * b, "/": a / b} return operations.get(op, "Invalid operation")print(calculate('+', 3, 4))
一个五行内的迷你计算器,兼顾简洁性和清晰性。
示例 5:快速图像处理
任务:将图像文件转换为灰度图。
from PIL import Imagedef to_grayscale(image_path): with Image.open(image_path) as img: imgnvert('L').save('grayscale_image.jpg')to_grayscale('image.jpg')
使用Python的PIL库以清晰的方式转换图像为灰度图。
过度简洁的陷阱虽然在Python中简洁是一种美德,但平衡它与可读性至关重要。过于复杂的单行代码可能变得晦涩难懂,违背了Python清晰易读的初衷。为了简洁而牺牲清晰是不可取的。
结论简洁的Python编程提供了诸多好处,比如提高可读性,简化维护等等。Python的简单和力量在于它能够用几行精心编写的代码表达复杂的操作,体现了编程的美学品位。
壹:什么是生辰八字
生辰八字,简称八字,是指一个人出生时的干支历日期;年月日时共四柱干支,每柱两字,合共八个字。
十天干:甲、乙、丙、丁、戊、己、庚、辛、壬、癸
十二地支:子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥
贰:年柱计算
把公历年减去3(干支纪年法是从公元4年开始的)除于10,余数为天干的字。
以2012年为例,减去3为2009年,除于10,余9,对照天干(甲、乙、丙、丁、戊、己、庚、辛、壬、癸)的第9位置的字为"壬"地支以12生肖确定
十二地支:子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥。分别对应十二生肖:鼠、牛、虎、兔、龙、蛇、马、羊、猴、鸡、狗、猪。
以2012年为例,2012年为龙年,地支对应辰,完成的2012年年柱就是壬辰年
年的分界以每年的立春为界线,立春前为上年,立春后为下年
叁:月柱计算
月柱天干可根据口诀;甲己之年丙做初,乙庚之岁戊为头,丙辛之年寻庚上,丁壬壬寅顺流行,戊癸何方起,甲寅之上好追求。
月柱中的地支每年固定不变,从寅月开始,到丑月结束
口诀对应表
肆:日柱计算
将所得余数÷10,得出的余数作为天干序数(所得余数小于10则余数直接为天干序数)将所得余数÷12,得出的余数作为地支序数(所得余数小于12则余数直接为天干序数)
注意:(年数-1)÷4若有小数,取整数即可
伍:时柱计算
时柱天干可根据口诀;甲己还加甲,乙庚丙作初,丙辛从戊起,丁壬庚子居,戊癸何方发,壬子是真途。
日与日的分界线是以子时来划分的,即十一点前是上一日的亥时,过了十一点就是次日的子时,而不要认为午夜十二点是一天的分界点。
口诀对应表
特别注意:古人计算时间用地方时间,而如今中国则用统一北京时间。地方时间是根据太阳在一天中的位置来确定的,而北京时间则是人造的,这就导致两种时间的换算,知道当事人的出生地经度,就可以进行这种换算。换算后的时间被称为“真太阳时间”,也就是地方时间。如果不进行这种转换,时辰这可能会排错。
时间换算公式;北京时间-(120度-当地经度)X4(如果计算结果为负,加24小时)
今天我们一起来做一个网页版的计算器吧,如果没有学过前端,在后面我会慢慢介绍到的。
首先我们开始做一个html的页面,用来做网页的工具有很多,因为一直写java,所以我还是比较习惯用eclipse来写html代码。
跟写java代码一样,需要先创建一个项目,如果之前有练习用的项目也可,然后创建一个包。最后跟创建java类就不一样了,我们需要创建的是html页面:在包上右键--new--other--html file。
查询出html file以后,可以直接双击,或者单击然后再点击下面的next按钮
给文件命名,命名时需要后缀名.html,当然了,因为使用开发工具的原因,后缀可以省略不写,会自动添加上,蜗牛就直接命名为jsq了,然后点击完成(finish)。
之后就开始实现计算器页面了,最开始,肯定是先在页面上添加计算器中需要的按钮,为了简单,我直接将按钮写在table表格中。
1.在页面上添加一个五行四列的表格,将第一行的前三个合并,作为计算器的屏幕。
2.在第一行第一个格子我使用一个输入框来作为计算器的屏幕;剩下其他的格子中全部添加按钮,写入相对应的按键的值。如下图
表格完成以后打开页面看一下效果
从html 文件上右键--open with--system editor,页面上会出现如图所示的效果图
3.给计算器设置想要的样式,我这里给所有的按钮设置宽度和高度均为50个像素。
使用内联式设置css,在head标签中添加一个style标签:按钮的样式如下
<style type=\"text/css\">
input{
width:50px;/* 给input设置宽度 */
height:50px;/* 给input设置高度 */
}
</style>
设置完成以后,页面显示如下:
你会计算器位于屏幕的做左上角,而且由于屏幕使用的也是一个input输入框,所以,需要将计算器放到页面的中,设置table的margin属性,为了稍微好看一点,给table加一个外边框,以及需要对屏幕的宽度高度单独进行设置,设置内容如下:
设置完成,来看一下效果
4.然后是给每个按钮添加功能,首先来实现,在页面上显示出表达式,直接上代码,
5.在之后是实现清除以及计算结果的功能,代码如下:
当然了很多浏览器支持直接使用id就可以代替:ducument.getElemenById(\"screen\")了,但是我还是习惯原始的方法。
写的很仓促,内容有点乱,这样就实现了一个简单的计算器,最终的效果我就不在演示了,好了今天就这些了,想了解java相关内容的,关注蜗牛吆。
一个非常简单的内容,写的很仓促,内容有点乱,如果想要源码,私聊蜗牛,发给你
copyright © 2022 一生命运网 版权所有 辽ICP备2022007116号-4
法律声明:本站文章来自网友投稿,不代表本站观点,版权归原创者所有,如果侵犯了你的权益,请通知我们,我们会及时删除侵权内容!