六、python基础知识之变量常量、索引取值和PEP8规范
一、变量与常量
变量与常量就是为了让程序拥有跟人一样记录事物状态的能力,当我们执行程序时,有些数据会发生变化,有些数据不会发生变化,而我们需要一些东西来反映这些情况,并能使用它。
1.什么是变量?
变量就是会发生变化的量,这个量用于指代事物的状态。(例如人的身高、体重,游戏角色的等级)
2.什么是常量?
常量指在程序运行过程中不会改变的量。(例如圆周率、重力加速度等)
变量的基本使用
变量使用的语法结构与底层原理
name = 'jason'
从上方的代码我们可以看出变量的语法结构(类似数学公式,每个环节缺一不可)如下:
变量名 赋值符号 数据值
注:python中的“=”号跟数学中的含义不同,“=”的称呼是赋值符号,顾名思义就是把值赋予给某个对象。在python中,“age = 19”中就是把右边的数据值赋值给左边的变量。
知道了“=”的作用后就可以讲讲变量的工作方式:
通过之前关于变量的学习,我们可以得知当一个变量被赋予一个数据值,在内存空间中拿了一块空间存放这个数据值,然后给数据值和变量命做了一个绑定,当我们访问这个变量时,就会把绑定的数据值展示出来。
注意事项:
1.同一个数据值可以绑定多个变量名
2.赋值符号也可能是变量名 如果是就先找该变量名绑定的数据值
3.一个变量名同一时间只能绑定一个数据值
案例:
日常生活中的变量
每天上课我们都会看到jason老师
其中称呼这方面可以有很多:jason老师、鸡哥、虹桥炮王
年龄:19(说不定要加个二三十岁)
性别:男性
之后我们可以把老师的这些状态信息放到代码中表示出来
name = 'jason'
age = 19
gender = 'male'
变量根据某些情况发生变化
age + = age
同一数据值绑定不同变量命
name = 'jason'
name1 = name
name2 = name1
一个变量只能绑定一个数据值
gender = 'male'
print(gender)
'''
假设jason变性了,性别需要改变
'''
gender = 'Girl'
print(gender)
'''
在这里运行代码后我们可以发现前后两个gender的数据值不一样,说明一个变量只能绑定一个数据值,绑定了其他数据值后就会失去之前的数据值。
'''
变量名的命名规范和命名风格
1.中文是可以用作变量名的,但是不建议使用,会让其他人觉得你不够专业,并且容易报错。
2.汉语拼音也是可以作为变量名的,但是不建议使用,同样会让人觉得不够专业。
3.变量名只能出现字母、数字、下划线。
4.数字不能开头。
5.变量名尽量做到见名知意。
6.变量名不能与关键字冲突。
变量的命名风格
1.下划线式
name_from_mysql_db1_userinfo = 'jason'
2.驼峰体式
大驼峰
NameFromMysqlDb1Userinfo = 'jason'
小驼峰
nameFromMysqlDb1Userinfo = 'jason'
ps:在同一个编程语言中尽量固定使用一种 不要随意切换
常量的基本使用
在Python中没有一个专门的语法定义常量,也是跟变量一样的形式表达的,只是人们约定俗成,用全部大写的变量名表示常量。所以常量除了变量名全是大写外,其他特性与变量一致。例:
HOST = '127.0.0.1'
二、索引取值
字符串、列表都是可以逐个取值的。但是python中的取值顺序和生活中有所不同,python中的顺序是从0开始的。
三、PEP8规范
1.什么是PEP8规范
在python中编写代码,相对其他语法较为自由,基本没有什么强制性要求,但这并不意味着python中没有编写代码的规矩,在我们不规范使用python代码时,pycharm中会出现各种颜色的波浪线和提示(只要不是红色就不会影响代码运行),这种情况就说明我们的代码存在格式不规范。
pycharm中有矫正代码格式的功能,快捷键是ctrl+alt+l

使用矫正功能前:

使用矫正后:

2.如何学习PEP8规范
我们是可以在网上搜到专门关于pythonPEP8规范的文章,但是这样死记硬背效果并不理想,因此这里推荐学习者通过在平时使用pycharm编写代码并矫正的过程中不断学习相关的PEP8规范。
PEP8举例:
1.逗号后面与数据值空一格
2.赋值符号左右都得空一格
六、python基础知识之变量常量、索引取值和PEP8规范的更多相关文章
- python 基础之注释变量常量
一:注释 注释: 就是对代码的解释 方便大家阅读代码 1.注释的分类 (1)单行注释 # 在python中在行首添加一个#号就将这一行进行注释 #单行注释: 用#开头,后面跟上任意字符串 #pyth ...
- Python基础知识(六)------小数据池,集合,深浅拷贝
Python基础知识(六)------小数据池,集合,深浅拷贝 一丶小数据池 什么是小数据池: 小数据池就是python中一种提高效率的方式,固定数据类型使用同一个内存地址 代码块 : 一个文 ...
- python基础知识你学会了多少
前言 学习是一个循序渐进的过程,不在于你学了多少,而在于你学会了多少.(装个b好吧,hhhh) 知识总结 之前一直想在网上找一个总结好的笔记,但是一直都没有找到,因此下定决心要总结一下,里面的都是在学 ...
- Python开发【第二篇】:Python基础知识
Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...
- python 爬虫与数据可视化--python基础知识
摘要:偶然机会接触到python语音,感觉语法简单.功能强大,刚好朋友分享了一个网课<python 爬虫与数据可视化>,于是在工作与闲暇时间学习起来,并做如下课程笔记整理,整体大概分为4个 ...
- python基础知识5---数据类型、字符编码、文件处理
阅读目录 一 引子 二 数字 三 字符串 四 列表 五 元组 六 字典 七 集合 八 数据类型总结 九 运算符 十 字符编码 十一 文件处理 十二 作业 一 引子 1 什么是数据? x=10,10 ...
- 二十六. Python基础(26)--类的内置特殊属性和方法
二十六. Python基础(26)--类的内置特殊属性和方法 ● 知识框架 ● 类的内置方法/魔法方法案例1: 单例设计模式 # 类的魔法方法 # 案例1: 单例设计模式 class Teacher: ...
- python基础知识小结-运维笔记
接触python已有一段时间了,下面针对python基础知识的使用做一完整梳理:1)避免‘\n’等特殊字符的两种方式: a)利用转义字符‘\’ b)利用原始字符‘r’ print r'c:\now' ...
- Python 基础知识(一)
1.Python简介 1.1.Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时 ...
- python基础知识部分练习大全
python基础知识部分练习大全 1.执行 Python 脚本的两种方式 答:1.>>python ../pyhton.py 2. >>python.py #必须在首行 ...
随机推荐
- Go | 函数(包)的使用
本文通过一个实现加减乘除运算的小程序来介绍go函数的使用,以及使用函数的注意事项,并引出了对包的了解和使用. 实现加减乘除运算 传统方法实现: var n1 float64 = 1.2 var n2 ...
- 【翻译】Spring Security - 如何解决WebSecurityConfigurerAdapter类已被弃用的问题?
原文链接:Spring Security - How to Fix WebSecurityConfigurerAdapter Deprecated 原文作者:Nam Ha Minh 原文发表日期:20 ...
- 【题解】CF1503B 3-Coloring
题面传送门 解决思路 讲一下 \(\text{VP}\) 时的思路. 首先想到,只要能将棋盘中红色或蓝色部分全部填成同一个数,那么剩下的就不会受限了(可行有两个,限制只有一个): 但考虑到交互库可能有 ...
- MessagePack 和System.Text.Json 序列号 反序列化对比
本博客将测试MessagePack 和System.Text.Json 序列号 反序列化性能 项目文件: Program.cs代码: using BenchmarkDotNet.Running; us ...
- perl文件操作
Perl 文件操作 Perl 使用一种叫做文件句柄类型的变量来操作文件. 从文件读取或者写入数据需要使用文件句柄. 文件句柄(file handle)是一个I/O连接的名称. Perl提供了三种文件句 ...
- Node.js的学习(二)node.js 模块化
一.Node.js模块化 1.模块化概要 早期的javascript版本没有块级作用域.没有类.没有包.也没有模块,这样会带来一些问题,如复用.依赖.冲突.代码组织混乱等,随着前端的膨胀,模块化显得非 ...
- 【项目案例】配置小型网络WLAN基本业务示例
组网需求 如图1-1所示,AC直接与AP连接.现某企业分支机构为了保证工作人员可以随时随地的访问Internet,需要通过部署WLAN基本业务实现移动办公. 具体要求如下: 1.提供名为"t ...
- MASA Framework -- 跨进程事件 IntegrationEventBus入门与设计
概述 跨进程事件总线允许发布和订阅跨服务传输的消息, 服务的发布与订阅不在同一个进程中 在Masa Framework中, 跨进程总线事件提供了一个可以被开箱即用的程序 IntegrationEven ...
- 前后端结合解决Excel海量公式计算的性能问题
背景 在数据密集的业务领域,尤其是金融,保险,税务等行业中,经常需要利用Excel模型,来对业务进行分析和处理.例如: 1.金融投资: 根据模型进行估值计算,并对投资风险进行评估,通过测算出投资的内部 ...
- Multipass,本地轻量级Linux体验!
Multipass介绍 Multipass 是由Ubuntu官方提供,在Linux,MacOS和Windows上快速生成 Ubuntu虚拟机 的工具.它提供了一个简单但功能强大的CLI,可让我们在本地 ...