一、变量与常量

变量与常量就是为了让程序拥有跟人一样记录事物状态的能力,当我们执行程序时,有些数据会发生变化,有些数据不会发生变化,而我们需要一些东西来反映这些情况,并能使用它。

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规范的更多相关文章

  1. python 基础之注释变量常量

    一:注释 注释: 就是对代码的解释 方便大家阅读代码 1.注释的分类 (1)单行注释 #  在python中在行首添加一个#号就将这一行进行注释 #单行注释: 用#开头,后面跟上任意字符串 #pyth ...

  2. Python基础知识(六)------小数据池,集合,深浅拷贝

    Python基础知识(六)------小数据池,集合,深浅拷贝 一丶小数据池 什么是小数据池: ​ 小数据池就是python中一种提高效率的方式,固定数据类型使用同一个内存地址 代码块 : ​ 一个文 ...

  3. python基础知识你学会了多少

    前言 学习是一个循序渐进的过程,不在于你学了多少,而在于你学会了多少.(装个b好吧,hhhh) 知识总结 之前一直想在网上找一个总结好的笔记,但是一直都没有找到,因此下定决心要总结一下,里面的都是在学 ...

  4. Python开发【第二篇】:Python基础知识

    Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...

  5. python 爬虫与数据可视化--python基础知识

    摘要:偶然机会接触到python语音,感觉语法简单.功能强大,刚好朋友分享了一个网课<python 爬虫与数据可视化>,于是在工作与闲暇时间学习起来,并做如下课程笔记整理,整体大概分为4个 ...

  6. python基础知识5---数据类型、字符编码、文件处理

    阅读目录 一 引子 二 数字 三 字符串 四 列表 五 元组 六 字典 七 集合 八 数据类型总结 九 运算符 十 字符编码 十一 文件处理 十二 作业   一 引子 1 什么是数据? x=10,10 ...

  7. 二十六. Python基础(26)--类的内置特殊属性和方法

    二十六. Python基础(26)--类的内置特殊属性和方法 ● 知识框架 ● 类的内置方法/魔法方法案例1: 单例设计模式 # 类的魔法方法 # 案例1: 单例设计模式 class Teacher: ...

  8. python基础知识小结-运维笔记

    接触python已有一段时间了,下面针对python基础知识的使用做一完整梳理:1)避免‘\n’等特殊字符的两种方式: a)利用转义字符‘\’ b)利用原始字符‘r’ print r'c:\now' ...

  9. Python 基础知识(一)

    1.Python简介 1.1.Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时 ...

  10. python基础知识部分练习大全

    python基础知识部分练习大全   1.执行 Python 脚本的两种方式 答:1.>>python ../pyhton.py 2. >>python.py   #必须在首行 ...

随机推荐

  1. Go | 函数(包)的使用

    本文通过一个实现加减乘除运算的小程序来介绍go函数的使用,以及使用函数的注意事项,并引出了对包的了解和使用. 实现加减乘除运算 传统方法实现: var n1 float64 = 1.2 var n2 ...

  2. 【翻译】Spring Security - 如何解决WebSecurityConfigurerAdapter类已被弃用的问题?

    原文链接:Spring Security - How to Fix WebSecurityConfigurerAdapter Deprecated 原文作者:Nam Ha Minh 原文发表日期:20 ...

  3. 【题解】CF1503B 3-Coloring

    题面传送门 解决思路 讲一下 \(\text{VP}\) 时的思路. 首先想到,只要能将棋盘中红色或蓝色部分全部填成同一个数,那么剩下的就不会受限了(可行有两个,限制只有一个): 但考虑到交互库可能有 ...

  4. MessagePack 和System.Text.Json 序列号 反序列化对比

    本博客将测试MessagePack 和System.Text.Json 序列号 反序列化性能 项目文件: Program.cs代码: using BenchmarkDotNet.Running; us ...

  5. perl文件操作

    Perl 文件操作 Perl 使用一种叫做文件句柄类型的变量来操作文件. 从文件读取或者写入数据需要使用文件句柄. 文件句柄(file handle)是一个I/O连接的名称. Perl提供了三种文件句 ...

  6. Node.js的学习(二)node.js 模块化

    一.Node.js模块化 1.模块化概要 早期的javascript版本没有块级作用域.没有类.没有包.也没有模块,这样会带来一些问题,如复用.依赖.冲突.代码组织混乱等,随着前端的膨胀,模块化显得非 ...

  7. 【项目案例】配置小型网络WLAN基本业务示例

    组网需求 如图1-1所示,AC直接与AP连接.现某企业分支机构为了保证工作人员可以随时随地的访问Internet,需要通过部署WLAN基本业务实现移动办公. 具体要求如下: 1.提供名为"t ...

  8. MASA Framework -- 跨进程事件 IntegrationEventBus入门与设计

    概述 跨进程事件总线允许发布和订阅跨服务传输的消息, 服务的发布与订阅不在同一个进程中 在Masa Framework中, 跨进程总线事件提供了一个可以被开箱即用的程序 IntegrationEven ...

  9. 前后端结合解决Excel海量公式计算的性能问题

    背景 在数据密集的业务领域,尤其是金融,保险,税务等行业中,经常需要利用Excel模型,来对业务进行分析和处理.例如: 1.金融投资: 根据模型进行估值计算,并对投资风险进行评估,通过测算出投资的内部 ...

  10. Multipass,本地轻量级Linux体验!

    Multipass介绍 Multipass 是由Ubuntu官方提供,在Linux,MacOS和Windows上快速生成 Ubuntu虚拟机 的工具.它提供了一个简单但功能强大的CLI,可让我们在本地 ...