python基础知识

简介:

一、python执行过程

    

wKiom1iuklXBJizyAABIzCWs3-E785.png-wh_50

    上图为一个python代码的执行流程。首先,源代码需要以.py结尾,经过编译器生成一系列的字节码,其生成的字节码是以.pyc结尾的文件;之后经过语义解释器输入到执行器中执行程序。

    一个Python程序可以分解为模块、语句、表达式和对象四个部分。其中,程序由模块构成、模块包含语句、语句包含表达式、表达式建立并处理对象。python是一门面向对象的语言,其主要特点是:以数据为中心,所有处理代码都围绕数据结构展开;主要方法是如何设计数据结构,并提供对此数据所允许的操作。而面向过程的特点为:以指令为中心, 由指令处理数据,主要解决的是如何组织代码解决问题(如C语言)。

二、python的对象引用(变量)

    python将所有数据存为内存对象,变量就是指内存对象的引用。python中的变量是动态类型,即在任何时刻,某个对象的引用都可以重新引用一个不同的对象(可以是不同的数据类型)。

In [32]: a=[1,2,3,4,5]
In [33]: type(a)    #此时变量a的类型为列表
Out[33]: list
In [34]: a=(1,2,3,4)
In [35]: type(a)    #重新赋值后,a的类型变成了元组
Out[35]: tuple

    使用内建函数type()可以返回给定数据的数据类型。"="用于将变量名与内存中的某对象绑定。

  • 变量的命名规则

        只能包含字母、 数字和下划线, 且不能以数字开头; 区分大小写; 禁止使用保留关键字。

  • 命名的惯例

        以单一下划线开头变量名(_x)不会被 from module import 语句导入; 前后有下划线的变
量名
(__x__)是系统定义的变量名, 对 python 解释器有特殊意义; 以两个下划线开头但是结
尾没有下划线的变量名
(__x)是类的本地变量; 交互模式下, 变量名”_”用于保存最后表达式
的结果; 变量名没有类型, 对象才有。

三、数据类型

    数据结构:通过某种方式(例如对元素)进行编号组织在一起的数据元素的集合。

  • python常用数据类型

        序列类型:

            列表:使用[]创建,如:['hello','world','mylinux']    可变序列

            元组:使用()创建,如:('one','tow','three')             不可变序列  
            字符串:也属于序列类型                                          不可变序列

        集合类型:集合set、frozenset(不可变集合)

        映射类型:字典dict,使用{}创建,如{'a':b}

    组合数据类型也是序列, 因此可以嵌套。 列表和元组不是真正存储数据, 而是存放对象引用;

Python 对象可以具有其被调用的特定方法(函数); 元组、 列表以及字符串等数据结构,其长度可以使用内置函数 len()测量。 

  • 逻辑操作符:

        Python 提供了 组逻辑运算
            身份操作符:
                is:判定左端对象引用是否相同于右端对象引用, 也可以与 NONE 进行
            比较操作符
:<,>,<=,>=,!=,==
            成员操作符:in 或 not in : 测试成员关系
            逻辑运算符
:and,or,not 

四、输入/输出

    对于输入输出,python2.x与python3.x中有所不同。在python2中输入有两个函数:input()和raw_input(),而输出使用的是print语句。raw_input()输入的是数值,而使用input()输入时使用的是变量,当输入变量为定义时会报错。python2.x中输出语句的格式:

Print “string %format1 %format2 ...” %(variable1,variable2,...)
    格式:%[(name)] [flags] [width] [.precision] typecode

    name位于括号中的一个属于后面的字典的键名, 用于选出一个具体项

    flag下面标志中的一个或多个
        -: 左对齐, 默认右对齐;    +:包含数字符号, 整数也会带"+";    O:表示一个零填充
    width指定最小宽度的数字
    一个小数点, 用于按照精度分割字段的宽度
    precision指定要打印字符串中的最大字符个数, 浮点数中小数点之后的位数,或者整数的最小位数。 

>>> raw_input("please input:")
please input:a              #输入值a
'a'
>>> input("please input:")            
please input:a              #输入的为变量a,此时a未定义报错
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<string>", line 1, in <module>
NameError: name 'a' is not defined
>>> a='1234'                #定义变量a,输入
>>> input("please input:")
please input:a
'1234'                      #取得的结果为a所对应的值

    在python3.x中使用input()函数作为输入,输入为值,print()函数作为输出。

In [37]: input("please input:")    #等同于python2.x中的raw_input()函数
please input:a
Out[37]: 'a'

五、语句和语法

    注释:    #, 可以从一行的任何地方开始
    续行:
    \     ‘'': 闭合操作符, 单一语句跨多行
    代码组:缩进相同的一组语句构成的代码块;首行以关键字开始, 如 
if、 while 等, 以冒号结束
Python 使用缩进来分隔代码组, 同一代码组的代码行必须严格左右对齐
    同一行放置多个语句:以分号作为分隔符
    模块:每一个 
python 脚本文件都可以被当作一个模块;模块里的代码可以是一端直接执行的脚本, 也可以是一些类似库函数的代码从而可由别的模块执行导入( import)。

六、主程序

    主程序:无论当前模块是被别的模块导入还是作为脚本直接执行, 都会执行的代码部分 。

    所有模块都有能力执行代码:最高级倍的 python 语句(没有缩进的)在模块被导入时就会执行;妥当的做法: 除了那些真正需要执行的代码以外, 所有功能代码都通过函数建立;因此仅在主程序模块中编写大量的顶级可执行代码; 用于被导入的模块只应该存在少量顶级可执行代码。 

    __name__指示模块应该被加载:如果模块是被导入, __name__的值是模块名字; 如果模块是直接执行, __name__的值是’__main__’

    获取帮助文档的方式:
        获取对象支持使用的属性和方法: 
dir()
        某方法的具体使用帮助: help(list.pop)
        获取可调用对象的文档字串: print obj.__doc__ 



本文转自 梦想成大牛 51CTO博客,原文链接:http://blog.51cto.com/yinsuifeng/1900628,如需转载请自行联系原作者

目录
打赏
0
0
0
0
263
分享
相关文章
Python面试:消息队列(RabbitMQ、Kafka)基础知识与应用
【4月更文挑战第18天】本文探讨了Python面试中RabbitMQ与Kafka的常见问题和易错点,包括两者的基础概念、特性对比、Python客户端使用、消息队列应用场景及消息可靠性保证。重点讲解了消息丢失与重复的避免策略,并提供了实战代码示例,帮助读者提升在分布式系统中使用消息队列的能力。
261 2
Python数据分析入门:基础知识与必备工具
【4月更文挑战第12天】Python是大数据时代数据分析的热门语言,以其简单易学和丰富库资源备受青睐。本文介绍了Python数据分析基础,包括Python语言特点、数据分析概念及其优势。重点讲解了NumPy、Pandas、Matplotlib、Seaborn和Scikit-learn等必备工具,它们分别用于数值计算、数据处理、可视化和机器学习。此外,还概述了数据分析基本流程,从数据获取到结果展示。掌握这些知识和工具,有助于初学者快速入门Python数据分析。
168 2
探索Python中的异步编程:从基础知识到实践应用
【6月更文挑战第6天】本文旨在深入探讨Python中的异步编程概念,包括其背后的原理、常用的库和框架以及如何在实际项目中应用这些知识。文章将通过具体的代码示例和场景分析,帮助读者理解异步编程在提升程序性能和处理并发任务中的重要性。
十分钟学习Python基础知识
Python是一种高效、易学且功能强大的编程语言,广泛应用于数据分析、人工智能、Web开发等领域。如果你是编程新手,想要快速入门Python,那么这篇文章将是你的最佳选择。我将在十分钟内带你了解Python的基础知识。
探索Python中的异步编程:从基础知识到高级应用
【6月更文挑战第8天】随着技术的进步,异步编程已经成为现代软件开发中不可或缺的一部分。本文将深入探讨Python中的异步编程,包括其基础知识、常用库和框架,以及一些高级应用。我们将通过实例来展示如何有效地使用异步编程来提高程序的性能和响应性。无论你是初学者还是经验丰富的开发者,这篇文章都会为你提供有价值的见解和技巧。
63 2
探索Python中的异步编程:从基础知识到实际应用
【6月更文挑战第6天】在本文中,我们将深入探讨Python中的异步编程,这是一种强大的编程技术,可以帮助我们更有效地处理并发任务。我们将从基础知识开始,然后逐步深入到实际应用,包括异步I/O操作、异步Web请求和异步数据库操作等。最后,我们将通过一个实际的项目案例,展示如何在Python中使用异步编程来提高程序的性能和效率。
python的入门基础知识和一些小技巧
python的入门基础知识和一些小技巧
39 0
Python基础教程(第3版)中文版 第一章 快速上手:基础知识(笔记)
Python基础教程(第3版)中文版 第一章 快速上手:基础知识(笔记)
Python基础知识主要包括其**语法规则、数据类型、控制结构以及函数和模块**等
【4月更文挑战第15天】Python基础知识主要包括其**语法规则、数据类型、控制结构以及函数和模块**等
65 11

热门文章

最新文章