四、Python基础(1)

1.什么是变量?

一种变化的量,量是记录世界上的状态,变指得是这些状态是会变化的。

2.为什么有变量?

因为计算机程序的运行就是一系列状态的变化。

3.定义变量

在Python中定义变量:

name = 'magua'
age = 24
gender = 'man'
height = 168
weight = 250

4.变量的组成

三部分:

1.变量名:变量名用来引用变量值,但凡需要用变量值,都需要通过变量名。

2.赋值符号:赋值

3.变量值:存放数据,记录状态。

name #报错,无任何意义
age = 24
height = 168
print(age)
print(height)

24

168

5.变量的命名规范

切记,定义变量其实就是记录状态,存永远不是目的,取才是最终目的。

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']

6.变量名的两种风格

1.驼峰体

AgeOfMagua = 24
print(AgeOfMagua)

2.下划线(推荐使用)

age_of-magua = 24
print(age_of-magua)

7.常量

常量是不变的量,Python没有强制定义常量。常量名一般用大写。

AGE = 25
print(AGE)

8.变量存哪了?

x = 10

程序在Python解释器上运行,字符进入了内存,也就是变量进入了内存并存在那里。

9.Python垃圾回收机制

如果再加上一段代码x = 11,python就会替换掉之前的x = 10替换掉,x相当于门牌号,重新赋值会取代之前的数值,解释器会释放10的内存占用。

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垃圾回收机制,清理10的内存占用。

11.小整数池

Python实现int的时候有个小整数池。为了避免因创建相同的值而重复申请内存空间所带来的效率问题, Python解释器会在启动时创建出小整数池,范围是[-5,256],该范围内的小整数对象是全局解释器范围内被重复使用,永远不会被垃圾回收机制回收。

在pycharm中运行python程序时,pycharm出于对性能的考虑,会扩大小整数池的范围,其他的字符串等不可变类型也都包含在内一便采用相同的方式处理了,我们只需要记住这是一种优化机制,至于范围到底多大,无需细究。

12.变量的三个特征

(1)打印

x = 10
print(x) #获取变量的变量值 10

(2)判断变量值是否相等

name1 = 'guapi'
name2 = 'magua'
print(name1 == name2) #False
False

(3)判断变量id是否相等

x=10
y=x
z=10
print(x==y)
ture
print(x is y)
ture
print(x is z)
ture
x = 257
x = 257
print(x is z)
False #整数池原因[-5,256],如果超出整数池,而且打印的时间较短,id可能会相等。

得出结论:id相等的变量,值一定相等,指向的是同一个内存地址;值相等的变量,id不一定相等。

13.花式赋值

(1)链式赋值(值相同的时候才能用)

a = 10
b = 10
c = 10
print(a,b,c)
10 10 10
a=b=c=10
print(a,b,c)
10 10 10

(2)交叉赋值

保证内存地址不变的情况下修改x和y

x=200
y=100
z=x
x=y
y=z
print('x:'x,'y:'y)
x:100
y:200
x=200
y=100
x,y = y,x
print('x:'x,'y:'y)
x:100
y:200

14.注释

方便以后调用代码时能看得懂。

代码注释分单行和多行注释,单行注释用#,多行注释可以用三对单/双引号,使用三引号

可以注释换行

#单行注释

'''
三单引号注释
三单引号注释
''' ''''''
三单引号注释
三单引号注释
''''''

注释原则:

1.不用全部加注释,对重要部分或不好理解部分加注释即可。

2.注释可以用中文或英文,但不要用拼音。

四、Python基础(1)的更多相关文章

  1. 二十四. Python基础(24)--封装

    二十四. Python基础(24)--封装 ● 知识结构   ● 类属性和__slots__属性 class Student(object):     grade = 3 # 也可以写在__slots ...

  2. 十四. Python基础(14)--递归

    十四. Python基础(14)--递归 1 ● 递归(recursion) 概念: recursive functions-functions that call themselves either ...

  3. 四. Python基础(4)--语法

    四. Python基础(4)--语法 1 ● 比较几种实现循环的代码 i = 1 sum = 0 while i <= 10: # 循环10-1+1=10次     sum += i     i ...

  4. 四.python基础数据类型

    一.什么是数据类型? 什么是数据类型? 我们人类可以很容易的分清数字与字符的区别,但是计算机并不能呀,计算机虽然很强大,但从某种角度上看又很傻,除非你明确的告诉它,1是数字,“汉”是文字,否则它是分不 ...

  5. Python 全栈开发四 python基础 函数

    一.函数的基本语法和特性 函数的定义 函数一词来源于数学,但编程中的「函数」概念,与数学中的函数是有很大不同的.函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数 ...

  6. 四 Python基础

    Python是一种计算机编程语言.计算机编程语言和我们日常使用的自然语言有所不同,最大的区别就是,自然语言在不同的语境下有不同的理解,而计算机要根据编程语言执行任务,就必须保证编程语言写出的程序决不能 ...

  7. Python 基础语法(四)

    Python 基础语法(四) --------------------------------------------接 Python 基础语法(三)------------------------- ...

  8. Python 基础 四 面向对象杂谈

    Python 基础  四  面向对象杂谈 一.isinstance(obj,cls) 与issubcalss(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls ...

  9. 第四章:Python基础の快速认识內置函数和操作实战

    本課主題 內置函数介紹和操作实战 装饰器介紹和操作实战 本周作业 內置函数介紹和操作实战 返回Boolean值的內置函数 all( ): 接受一個可以被迭代的對象,如果函数裡所有為真,才會真:有一個是 ...

  10. python学习第四讲,python基础语法之判断语句,循环语句

    目录 python学习第四讲,python基础语法之判断语句,选择语句,循环语句 一丶判断语句 if 1.if 语法 2. if else 语法 3. if 进阶 if elif else 二丶运算符 ...

随机推荐

  1. springboot-redis-crda example

    springboot-redis-crda example 1. 从 https://github.com/XLuffyStory/springboot-redis-crdu 拿到源码之后,导入到ST ...

  2. 在同一页面中显示多个echart图表

    整理了一下大概有两种做法来实现在同一个页面中显示多个echart图表,废话不说直接上代码. 在同一个echart对象中绘制多个图表 <!DOCTYPE html> <html lan ...

  3. <h2>js数组操作大全(pop,push,unshift,splice,shift方法)</h2>

    ---恢复内容开始--- shift:删除原数组第一项,并返回删除元素的值:如果数组为空则返回undefined var a = [1,2,3,4,5]; var b = a.shift(); //a ...

  4. 2018.8.19 2018暑假集训之maxnum

    昨天去做志愿服务去了没写成Q_Q 今天再来一道 先放题面描述 设有n个正整数(n<=20),将它们联成一排,组成一个最大的多位数 设有n个正整数(n<=20),将它们联成一排,组成一个最大 ...

  5. curl推送示例:熊掌号,百度站长的链接推送(系统环境变量配置)

    curl推送示例:熊掌号,百度站长的链接推送(需要用户系统环境变量配置)这篇文章主要讲解curl推送,熊掌号,百度站长的链接推送,我们很多seo朋友都搞不定curl的推送链接,而且还要配置系统的环境变 ...

  6. 使用OpenAPI构建更智能的API

    像OpenAPI这样的API描述规范是一个关键工具,您应该尽可能地将其好好掌握,记录和执行API的工作由计算机和开发人员完成:OpenAPI 3.0现在允许额外的表现力,可以让机器为我们做更多有用的工 ...

  7. Elasticsearch(一)开启外网访问

    1. 设置Elasticsearch对外访问的Host 修改Elasticsearch配置文件 elasticsearch.yml : network.host: 128.24.108.84  //在 ...

  8. 雅阁微信群、雅阁车友群、十代雅阁交流微信QQ群

    最近一直在关注第十代雅阁,不论是普通汽油版本还是油电混动版本都很不错,在网上看到很多评测文章和视频 后续都会整理发布到微信群中. 由于论坛发帖,博客发文都不是很方便,为了及时沟通,先创建了微信群,方便 ...

  9. mysql+mybatis存储超大json

    1. 场景描述 因前端界面需存储元素较多,切割后再组装存储的话比较麻烦,就采用大对象直接存储到mysql字段中,根据mysql的介绍可以存放65535个字节,算了算差不多,后来存的时候发现: 一是基本 ...

  10. 小程序实现图片上传,预览以及图片base64位处理

    最近一段时间在做小程序项目,第一期功也完工了.需要好好总结一下经验,把项目中遇到的问题好好总结一下,遇到的问题,踩过的坑.今天写一个小程序实现图片上传,预览,以及删除,图片base64位处理.下面就是 ...