Python基础A(执行方式---注释)
执行Python程序的两种方式
交互式(jupyter)
优点:运行一句,执行一句
缺点:关闭即消失
命令行式(pycharm)
优点:可以一直保存下去
缺点:全部写完才能调试bug
虽然txt问价可以运行,但尽量用.py文件
变量
什么是变量
简单来说,世间万物所有的变化的状态都可以称为变量。
为什么要有变量
对于世间万物,变化才是最大的不变,因此一定要有一个变量来描述世间万物。而计算机里面的程序的运行过程也就是一系列状态的更替变化,故也需要有一变量来描述这种变化。
定义变量
name = 'nick'
age = 19
......
变量的组成
变量主要由变量名、赋值符号和变量值组成。
变量名:用来引用变量值,指向变量值,相当于变量值的门牌号。
赋值符号用于赋值。
变量值:存放数据,用来记录现实世界中的某种状态。
age = 18
name = 'nick'
print(age)
print(name)
变量名的命名规范
定义一个变量其实就是在记录现实世界中的状态,并且存永远不是目的,取才是目的。需要满足以下三个规范:
1.命名应该能反映变量值所描述的状态,切记不可用中文。
2.变量名必须用字母数字下划线组合,并且变量名的第一个字符不能是数字。
3.关键字不能声明为变量名
['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']
变量名的两种风格
驼峰体
AgeOfNick = 19
下划线
age_of_nick
常量
常量就是全大写的变量名,常量可以修改,但是没有意义。
AGE_OF_NICK = 19
Python变量内存管理
变量存哪了
x = 10
上面这一句执行完,内存给变量值分配一块小空间用于保存变量值,然后变量名指向该变量值,即x指向存在内存中的10.
Python垃圾回收机
x = 10
x = 11
执行上面两段代码后,X由原来指向10改为现在指向11,故原来在内存中的变量值10没有变量名,所以会被当做垃圾进行回收。
引用计数
x = 10 # 10引用计数加1为1
y = x # 10引用计数加1为2
x = 11 # 10引用计数减1为1;11引用计数加1为1
del y # 10引用计数减1为0,触发python垃圾回收机制,python清理10的内存占用
小整数池
范围在[-5, 256]内的小整数,由于经常会被用,为了避免因创建相同的值而重复申请内存空间所带来的效率问题, Python解释器会在启动时创建出小整数池,该范围内的小整数对象是全局解释器范围内被重复使用,永远不会被垃圾回收机制回收。
在pycharm中运行python程序时,pycharm出于对性能的考虑,会扩大小整数池的范围,其他的字符串等不可变类型也都包含在内一便采用相同的方式处理了,我们只需要记住这是一种优化机制,至于范围到底多大,无需细究。
变量的三个特征
获取变量值的内存地址,针对变量值
获取变量值的数据类型,针对变量值
打印变量值
height = 180
print(id(height))
print(type(height))
print(height)
花式赋值
链式赋值
a = b = c = d = 10
print(f'a:{a}, b:{b}, c:{c}, d:{d}')
输出:a:10, b:10, c:10, d:10
交叉赋值
自动创建中间变量,用完后主动释放空间
x = 100
y = 200
x, y = y, x
print(f'x:{x} y:{y}')
输出:x:200 y:100
注释
单行注释:
#号
ctrl+/ 选中多行进行注释/反注释
多行注释
用三引号
'''
三引号可以多行注释,可以换行
'''
添加注释的原则
- 在有需要的地方加注释,一般建议在代码末尾,当是一个模块时在代码首
- 注释用中英文
Python基础A(执行方式---注释)的更多相关文章
- Python程序的执行方式
Python代码有两种执行方式: 一.文件执行 二.交互器执行(推荐) 一.文件执行 1.用 notepad++ 或 Sublime Text,甚至 写字本创建一个文件. 2.比如:print('He ...
- Python文件中执行脚本注释和编码声明
在 Python 脚本的第一行经常见到这样的注释: #!/usr/bin/env python3 或者 #!/usr/bin/python3 含义 在脚本中, 第一行以 #! 开头的代码, 在计算机行 ...
- Python基础:七、注释
有时候我们写的东西不一定都是给用户看的,或者不希望解释器执行(方便自己,方便他人),我们可以使用#来注释掉代码被注释的内容是不会执行的,可以方便后面的程序员来拜读你的代码. 1. 单行注释:#被注释的 ...
- Python基础---控制执行流程
一.if语句 1.if语句 作用:让程序根据条件选择性地执行某条语句或某些语句 说明:if语句又叫条件语句,也叫分支语句 语法: if 真值表达式1: 语句块1 elif 真值表达式2: 语句块2 . ...
- Python基础之赋值与注释
目录 1. 花式赋值 1.1 链式赋值 1.2 交叉赋值 1.3 交叉赋值(解压缩) 2. 注释 2.1 单行注释 2.2 多行注释 1. 花式赋值 1.1 链式赋值 a = 10 b = 10 c ...
- python基础之标识符、注释与变量
一.注释 1.作用:注释是用来解释和说明代码的. 2.分类:注释可以分为单行注释和多行注释 2.1.单行注释:在编写的代码或文字前加上"#",表示单行注释 1 #我是单行注释 2 ...
- Python基础初识
一.安装 暂时没空写,预留 二.python基础初识 2.1 注释 当行注释:# 被注释内容 多行注释:'''被注释内容''',或者"""被注释内容"" ...
- Python 基础知识 (1) 持续更新
(1)数字和表达式 当进入Python交互式的时候,Python就可以直接当成计算机使用 如 >>> 2 + 2 4 但是 当 1个整数 和 另外一个整数 相除的时候,计算的结果,只 ...
- python学习(一):python基础
python两种执行方式: python解释器:py文件路径 python进入解释器:实时输入并获取执行结果 解释器路径: 在linux系统中,python文件在头部加上#!/usr/bin/env ...
随机推荐
- ConcurrentHashMap竟然也有死循环问题?
前几天和朋友闲聊,说遇到了一个ConcurrentHashMap死循环问题,当时心里想这不科学呀?ConcurrentHashMap怎么还有死循环呢,毕竟它已经解决HashMap中rehash中死循环 ...
- PurpleAir空气质量数据采集
PurpleAir空气质量数据采集 # -*- coding: utf-8 -*- import time, datetime, calendar import urllib, requests im ...
- 深入理解C语言 - 指针详解
一.什么是指针 C语言里,变量存放在内存中,而内存其实就是一组有序字节组成的数组,每个字节有唯一的内存地址.CPU 通过内存寻址对存储在内存中的某个指定数据对象的地址进行定位.这里,数据对象是指存储在 ...
- torch_06_卷积神经网络
1.概述 卷积神经网络的参数,由一些可学习的滤波器集合构成的,每个滤波器在空间上都计较小,但是深度和输入数据的深度保持一致.在前向传播中,让每个滤波器都在输入数据的宽度和高度上滑动(卷积),然后计算整 ...
- 33,Leetcode 搜索旋转排序数组-C++ 递归二分法
题目描述 假设按照升序排序的数组在预先未知的某个点上进行了旋转. ( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] ). 搜索一个给定的目标值,如果数组中存在这 ...
- Eureka的集群配置
1:步骤说明 2:修改映射配置 3:修改Eureka的.yml配置文件 以其中一个为例 4:在8001中同时注册 5:测试结果
- 通过IP获取MAC地址例子(内核层)
博客地址:http://home.cnblogs.com/u/zengjianrong/ 在内核处理此流程,反而更加简单些,代码如下: #include <net/arp.h> #incl ...
- 【CTS2019】随机立方体(容斥)
[CTS2019]随机立方体(容斥) 题面 LOJ 洛谷 题解 做这道题目的时候不难想到容斥的方面. 那么我们考虑怎么计算至少有\(k\)个极大值的方案数. 我们首先可以把\(k\)个极大值的位置给确 ...
- VMWare 下安装 Windows XP
准备工作 安装VMware 我这里安装的是 VMware-workstation-full-12.1.1-3770994.exe 下载Windows XP with SP3 从网上下载的MSDN版本X ...
- request.setAttribute()的用法
分类专栏: Java request在当次的请求的url之间有效一次传参数,速度快,缺点是参数只能取一次 forward是转向,将现在的请求转交,他只能在同一个容器里使用同时保存客户的请求状态. ...