Python (2)-A simple introduction to Python programming

Source: Internet
Author: User
Tags object object

I. Statements and syntax
1234567891011 #  注释\    转译回车,继续上一行,在一行语句较长的情况下可以使用其来切分成多行,因其可读性差所以不建议使用 ;  将两个语句连接到一行,可读性差,不建议使用 :  将代码的头和体分开 语句(代码块)用缩进方式体现不同的代码级别,建议采用4个空格(不要使用tab),因为不同编程语言环境下tab所代表的空格数不一定是4python文件以模块的方式组织,编写一个.py结尾的文件实际上就写了一个模块

  

Two. Variable definition and Assignment
1234567891011 a=11为内存变量存放于内存中,a为变量的引用,python为动态语言,变量及其类型均无需事先声明类型与C语言和C++的区别:a=1无返回值注:1.c语言变量声明必须位于代码最开始,而且要在所有语句之前  2.c++,java可以随时随地声明变量,但是必须声明变量名字和类型  3.python也可以随时随地声明变量,但是变量在被定义时,解释器会根据等式右侧的值来决定其类型  4.变量必须先赋值,才可使用

  

Three. Memory Management memory Management:
1234567 1.变量无须指定类型2.程序员无须关心内存管理 3.变量没有指向被赋予的值时会被自动回收4.del能够直接释放内存对象(减少对象的引用计数)

  

Reference count:

To increase the reference count:

1234567 1.对象被创建并将其引用赋值给变量,引用计数加1(例a=1 2.同一个对象的引用又赋值给其它变量,引用计数加1(例b=a)3.对象作为参数被函数调用,引用计数加1(例int(a))4.对象成为容器对象中的一个元素,引用计数加1(例list_test=[‘xuyaping‘,‘z‘,a])

  

To reduce the reference count:

123456789 1.a作为被函数调用的参数,在函数运行结束后,包括a在内的所有局部变量均会被销毁,引用计数减12.变量被赋值给另外一个对象,原对象引用计数减1(例b=21这一内存对象的引用只剩a)3.使用del删除对象的引用,引用计数减1(例dela)4.a作为容器list_test中的一个元素,被清除,引用计数减少(例list_test.remove(a))5.容器本身被销毁(例dellist_test)

  

123 注意:python内存回收交给一段独立的代码即垃圾回收器(包含引用计数器和循环垃圾收集器),引用计数在归零时并不会立即清除(可能有循环调用)   不必纠结循环引用收集,只需记住垃圾回收器帮你自动清理内存。

  

Simple example
1234567 x=1#创建内存变量1,将变量1的引用传给x,此刻1的引用计数为1y=x #1的引用计数增加到2y=2#创建新的内存变量2,将变量2的引用传给y,原本指向1的y,此刻给了2,所以1的引用计数减少到了1del x #删除了内存对象1的引用x,此刻1再无引用,此刻它就成了python解释器回收的目标

Four. Python objects
In Python, where the object model is used to store data, the factory function used to generate the data type is essentially a class, and the result of the new data is that instantiating an object object has three characteristics:
1. Identity: Memory address, you can confirm with ID (), the same ID is the same object 2. Type: Can be viewed with type (), the type of the return value is also object 3. Value

Five. Identifiers
123456789101112131415 定义:允许作为名字的有效字符串集合1.名字必须有实际意义,可读性好 2.首字母必须是字母或下划线(_) 3.剩下的字符可以是字母和数字或者下划线 4.大小写敏感 5.两种风格:conn_obj或ConnObj 6.不能使用关键字,不能使用内建内建:由解释器自动导入(提供基本功能),可以看作全局变量,

  

Six. Dedicated underline identifiers
1234567891011121314151617181920212223242526272829 _xxx:不能用frommodule import*导入__xxx__:系统定义名字__xxx:类中私有变量下划线对于解释器来说有特殊意义,而且是内建标识符所使用符号,不建议自定义变量以下划线开头但是如果是类中的私有变量,__xxx将会是一个好习惯 系统变量__name__会根据python文件被加载方式的不同得出不同的值。     python文件被当作模块导入:__name__=模块名或者文件名    python文件被执行:__name__=‘__main__‘ 在我们使用python编写一个软件时,应该只有一个主程序中包含大量顶级代码(就是没有缩进的代码,python解释器读取到顶级代码会立即执行),其他.py文件应 该只有少量顶级代码,所有功能都应该封装在函数或类中。 通常在文件结尾结合__name__变量,编写测试代码 。

  

Seven. Write the basic style of the module
12345678 1.标题2.文档注释3.模块导入4.变量定义5.类定义语句6.函数定义语句7.主程序8.测试代码

  

Eight. Demonstration
1234567891011121314151617181920212223242526 #_*_coding:utf-8_*_#!/usr/bin/env python‘‘‘This is an example module‘‘‘importsys,osdebug=TrueclassTest:    ‘‘‘    test class    ‘‘‘    passdefmain():    ‘‘‘    test func    :return:    ‘‘‘    passif__name__ ==‘__main__‘:    main()

  

Python (2)-A simple introduction to Python programming

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.