python -编译型语言和解释型语言-内建函数-编码风格

本文探讨了编译型和解释型语言的区别,强调了编译型语言的高效与解释型语言的灵活性。以Python为例,介绍了Cpython和PyPy的优缺点,Cpython支持丰富的第三方库,而PyPy通过JIT技术提高运行效率。此外,文章还提及了Python的内建函数如print()、id()和type(),并分享了Python编码风格的指导原则PEP8和命名规范。
摘要由CSDN通过智能技术生成

编译型语言 VS 解释型语言

二者的不同在于编译时机的不同

编译型语言:

将程序全部编译成二进制文件再运行

        优点:先编译再执行,效率高。

        缺点:代码修改后需要重新编译,排错较难

        代表:c语言

  解释型语言:

        一边编译一边执行

        优点:跨平台兼容性好

        修改代码比较方便

        排错较容易

        缺点:效率低。

解释器类型:

        Cpython:默认是Cpython解释器, c语言实现(官方)
        IPython:基于CPython之上的一个交互式解释器
        Jpython:java实现, Python代码会先转化成Java 字节码
        IronPython:c#实现
        PyPy:python实现的python解释器 pypy运行效率高

现在用的比较多的: cpython  vs   pypy
pypy运行效率高 JIT(just in time  即时编译)把常用的代码预编译成机器码,所以运行效率高
cpython 支持的第三方库多
 

内建函数(不需要额外的操作拿来就用,内嵌在解释器内部)

        print() : 向屏幕输出你传递的参数

 

        id   : 查看对象的内存地址

 

help() :查看帮助信息

 dir  :   查看对象的属性

   属性的使用 通过 变量名点属性名
    print(a.count('g'))

type  : 查看对象类型

 

编码风格

        python之禅

    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!

pep8规范

        本来是谷歌内部广泛使用的python、编码风格,后来逐渐变成python编码规范

1.使用空格来表示缩进,不要使用制表键(tab键)

2.和语法相关的每一层缩进用4个空格来表示

3.每行的字符数不应超过79

4.为变量赋值的时候,赋值符号的左侧和右侧应该各自写上一个空格,而且只要一个就好

5.空格的使用

    • 与后面的逗号、分号或冒号保持紧凑
    • 切片内的冒号就像二元操作符一样,任意一侧应该被等同对待(把它当做一个极低优先级的操作)。
    • 与括号保持紧凑(小括号、中括号、大括号)
    • 函数名与其后参数列表的左括号应该保持紧凑
    • 与切片或索引的左括号保持紧凑
    • 在赋值操作符(或其它)的两侧保持多余一个的空格
    • 不要在关键值参数或默认值参数的等号两边加入空格
    • 带注释的函数定义中的等号两侧要各插入空格。此外,在冒号后用一个单独的空格,也要在表明函数返回值类型的->左右各插入一个空格。
    • 打消使用复合语句(多条语句在同一行)的念头。

命名规范

1.使用字母数字下划线的组合。

2.数字不能作为第一个字符。

3.不能使用关键字为变量名。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值