• python基础知识


    python基础知识

    一:python发展

    python2.6与python3.0区别:

          源码不标准,混乱,重复代码过多

    二:python所属类型

    (1)编译型:一次性将程序全部编译成二进制

    优点:运行速度快

    缺点:不能跨平头,出现bug时候全部修改,开发效率低。

    例子:c语言,c++

    解释型:从上到下一行一行执行

    优点:开发效率高

    缺点:运行时候比较慢,能跨平头执行,出现问题可以改出现问题的代码就行

    编译型与解释型语言:安装解释器就是解释型语言,可跨平台。

    混合型语言

    java与c#

    强类型定义语言

    一个变量被指定了某个数据类型,不强制改变,永远是这个数据类型。(一设置变量从头到尾都执行)

    改变容易报错

    弱类型定义语言

    一个变量可以被赋不同数值

    python是一种强类型动态解释型语言(python是一门动态解释性的强类型定义语言

    python优缺点

    一:python 简单 明确  优雅

    二:开发效率高  有第三方库

    三:高级语言:python写程序时候无需担心程序使用内存的底层细节。

    四:可移植性:能跨平台

    五:可扩展性:把关键代码运行更快或某些算法不公开,把部分程序用c编写,然后用python使用

     缺点:

    一:运行速度慢

    二:代码不能加密

    三:线程不能用多cpu问题

     (2)python的种类。

    CPython

    当我们从Python官方网站下载并安装好Python 3.6后,我们就直接获得了一个官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行python就是启动CPython解释器。

    CPython是使用最广的Python解释器。教程的所有代码也都在CPython下执行。

    IPython

    IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的。好比很多国产浏览器虽然外观不同,但内核其实都是调用了IE。

    CPython用>>>作为提示符,而IPython用In [序号]:作为提示符。

    PyPy

    PyPy是另一个Python解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。

    绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。如果你的代码要放到PyPy下执行,就需要了解PyPy和CPython的不同点

    Jython

    Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。

    IronPython

    IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。

    小结:

      Python的解释器很多,但使用最广泛的还是CPython。如果要和Java或.Net平台交互,最好的办法不是用Jython或IronPython,而是通过网络调用来交互,确保各程序之间的独立性。

     三:运行第一个文件

    d盘创建一个.py文件

    打开Windows命令行输入cmd  

    输入python D: r.py敲enter

    注释
    单行注释:#

    多行注释:'''  ''' 或者'''” ''''''

    四:变量

    把程序运行的结果临时储存在内存中,以便后续调用。

    变量规范:一:必须是有数字,字母和下划线任意组成,开头不能是数字

                     二:不能是python中关键字

    ['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']

                     三:变量具有可描述性

                     四:不能是中文

    变量:name,age,height,π,建国年龄

    推荐方式

    5.3、推荐定义方式(驼峰体首字母大写 下划线:字母下划线首字母可小写)

    复制代码
    #驼峰体
    
    AgeOfOldboy = 56
    
    NumberOfStudents = 80
    
    #下划线
    
    age_of_oldboy = 56
    
    number_of_students = 80


    改编码方式
    ---(下划线 shift+(减号))
    -*-incoding: utf-8—#—

    变量不能是中文,不能过长,不能变量名次不达意

    常量:
    设置count=60 一旦更改会报错,

    五:程序交互

    将用户输入的内容赋值给name变量
    name=input('请输入您的名字')
    打印的内容
    print(name)

    六:基础数据类型初始(对数据类型进行划分)
    整数类型(int)


    32位机器取值:-2**-31到2**31-1
    64位机器取值:-2**-63到2**63-1
    a=2**64
    print(type(a))

    print(int(a))   #int()把括号里面的内容变成数字   #str()把括号里面的内容强行变成字符串    #type()表示查看数据类型

    数据类型:int() str() bool值:True or False 三种

    字符串可以加,并且与数字相乘
    eg:

    a='123'
    b='abc'
    print(a+b)

    运行结果:123abc

    字符串可以跟数字相乘

    a='3'
    b='abc'
    print(int(a)*b)

    运行结果:abcabcabc


    布尔值
    >>> a=3
    >>> b=5
    >>>
    >>> a > b #不成立就是False,即假
    False
    >>>
    >>> a < b #成立就是True, 即真
    True

    格式化输出
    现有一练习需求,问用户的姓名、年龄、工作、爱好 ,然后打印成以下格式

    name=input('用户的姓名')

    age=input('年龄')
    job=input('工作')
    hobbie=input('爱好')

    msg(name,age,job,hobbie)
    print(msg)
  • 相关阅读:
    SSDT
    SSDT
    Rootkit之SSDT hook(通过CR0)
    直接用编译器按ctrl+F5运行和双击运行结果不一样
    HDU 1754 I Hate It
    HDU 1166 敌兵布阵
    网易2017内推笔试题 合唱团
    CodeForces 1151F Sonya and Informatics
    CodeForces 1151E Number of Components
    洛谷 P1962 斐波那契数列
  • 原文地址:https://www.cnblogs.com/Blueelves001/p/12611241.html
Copyright © 2020-2023  润新知