Python --简介

本文介绍了Python的基础知识,包括语句与表达式的区别,输入输出的实现,各种运算符的使用,语句和语法的规则,变量和赋值的细节,以及内存管理和基本的编程风格指南。重点讨论了变量的赋值方式,如复合运算赋值、多重赋值和多元赋值,并强调了Python的内存管理机制是通过引用计数和垃圾收集来实现的。
摘要由CSDN通过智能技术生成

目录

1, 语句和表达式的区别

2, 输入和输出

2-1, 输入(input)

2-2, 输出(print)

3, 运算符

3-1, 算数运算符

3-2, 比较运算符

3-3, 逻辑运算符

3-4, 运算符之间的优先级

4, 语句和语法

5, 变量和赋值

5-1, 变量命名规范

5-2, 变量说明

5-3, 赋值

5-3-1, 复合运算赋值

5-3-2, 多重赋值

5-3-3, 多元赋值

5-4, 私有变量

6, 基本的风格指南

6-1, 文档字符串

6-2, 模块的结构和布局

7, 内存管理


1, 语句和表达式的区别

不同点:语句中包含关键字,表达式无关键字

相同点:语句和表达都可以有输出,也可没有输出

2, 输入和输出

2-1, 输入(input)

通过内建方法"input(提示信息)"获取用户输入,会截取末尾的换行符;若提供了"提示字符串",则显示该字符串

In [56]: input('请输入:')
请输入:

2-2, 输出(print)

通过内建方法"print(result)"输出结果, 默认给每一行添加一个换行符

In [57]: print('hello python')
hello python

3, 运算符

3-1, 算数运算符

支持的算数运算符:+、 -、  *、  /、  %(取余)、  **(乘方)

优先级:**  >  单目运算符  >  *、 /、 % > +、 -

3-2, 比较运算符

支持的比较运算符:>、 >=、<、 <=、 ==、 != 

3-3, 逻辑运算符

支持的逻辑运算符:and、 or、 not

优先级: not > and > or

3-4, 运算符之间的优先级

算数运算符 > 比较运算符 > 逻辑运算符

说明:适当的使用(),避免运算符的优先级问题导致的错误

4, 语句和语法

通过"井号(#)"表示注释符号, 从"#"开始,直到一行结束的内容都是注释

通过"换行(\n)"表示行分割符

通过"反斜杠(\)"表示继续上行

# \用于将一行语句分行书写
In [61]: if  a==1 and \
    ...: b ==1:
    ...:     pass

# 说明:使用闭合操作符([], {}, ())可以将一行分成多行;
# 使用三引号也可以将一行分成多行
# 推荐使用(),将一行分成多行

通过"分号(;)"可以将多个语句连接在一行, 缺点:不易读,不推荐使用

In [60]: a = b = 1
In [62]: print(a);print(b)
1
1

通过"冒号(:)"将代码块的头和体分开

说明:同一缩进程度的语句为同一层次关系,没有缩进的部分为代码主体;

5, 变量和赋值

5-1, 变量命名规范

变量名大小写敏感, 字母、 _、 数字组成,且首字母不能为数字

5-2, 变量说明

不支持自增1和自减1, 如++1, --1

不需要预先声明变量类型,因为变量的类型和值在赋值的那一刻被初始化

赋值语句没有返回值

# 由于(y=1)没有返回值,所以报错
In [68]: x = (y=1)
  File "<ipython-input-68-d2676719b49a>", line 1
    x = (y=1)
          ^
SyntaxError: invalid syntax

5-3, 赋值

赋值不是将obj的值赋给变量,而是将obj的引用赋给变量

5-3-1, 复合运算赋值

支持通过复合操作符("变量A 运算符= 变量B")进行赋值,增量赋值的好处:对象仅被处理了一次

# 通过"变量A 运算符= 变量B"进行复合运算
# 这里的运算符支持算数运算符、位运算符
​In [69]: a = 10
In [70]: a += 10
In [71]: a
Out[71]: 20

5-3-2, 多重赋值

通过变量"变量A = 变量B = 值"方式进行多重赋值

In [101]: x = y = 1

In [102]: x, y
Out[102]: (1, 1)

5-3-3, 多元赋值

用过"变量A, 变量B = 值A, 值B"方式进行多元赋值

In [1]: x, y = 1, 2

In [2]: x, y
Out[2]: (1, 2)

In [3]: x, y = y, x

In [4]: x,y
Out[4]: (2, 1)

5-4, 私有变量

类中带有__xxx的变量(变量名前有双下划线):为类的私有变量,不能从外部进行访问

__xxx__(变量前后):视为系统变量

6, 基本的风格指南

6-1, 文档字符串

介绍函数,方法,类,模块的功能, 通过obj.__doc__进行访问, 在编码时推荐写上文档字符串

In [109]: def func():
     ...:     """this is my func"""
     ...:     pass
     ...:

In [110]: func.__doc__
Out[110]: 'this is my func'

6-2, 模块的结构和布局

第一行:起始行

第二行:模块文档

第三行:模块导入

第四行:变量定义

第五行:类定义

第六行:函数定义

第七行:主函数

#! /usr/bin/env python
# -*- coding:utf-8 -*-

"""this is my module"""

import os

a = 1

class MyClass(object):
    """MyClass doc"""
    pass


def my_func():
    """my_func doc"""
    pass

# 如果该模块是被导入,则__name__等于模块的名字
# 如果该模块是被执行,则__name__等于__main__
if __name__ == '__main__':
    my_func()

说明:py文件中,没有缩进的代码,不管是被导入,还是被执行,都会执行该层级代码

7, 内存管理

python的内存管理是通过解释器负责

通过引用计数(一个内部变量)表示变量被引用了多少次,引用计数解释器跟踪

垃圾收集是指当一个变量的引用计数为0时, 会由垃圾收集器来释放内存,垃圾收集器是一块独立的代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值