四、Python基础(1)
四、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)的更多相关文章
- 二十四. Python基础(24)--封装
二十四. Python基础(24)--封装 ● 知识结构 ● 类属性和__slots__属性 class Student(object): grade = 3 # 也可以写在__slots ...
- 十四. Python基础(14)--递归
十四. Python基础(14)--递归 1 ● 递归(recursion) 概念: recursive functions-functions that call themselves either ...
- 四. Python基础(4)--语法
四. Python基础(4)--语法 1 ● 比较几种实现循环的代码 i = 1 sum = 0 while i <= 10: # 循环10-1+1=10次 sum += i i ...
- 四.python基础数据类型
一.什么是数据类型? 什么是数据类型? 我们人类可以很容易的分清数字与字符的区别,但是计算机并不能呀,计算机虽然很强大,但从某种角度上看又很傻,除非你明确的告诉它,1是数字,“汉”是文字,否则它是分不 ...
- Python 全栈开发四 python基础 函数
一.函数的基本语法和特性 函数的定义 函数一词来源于数学,但编程中的「函数」概念,与数学中的函数是有很大不同的.函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数 ...
- 四 Python基础
Python是一种计算机编程语言.计算机编程语言和我们日常使用的自然语言有所不同,最大的区别就是,自然语言在不同的语境下有不同的理解,而计算机要根据编程语言执行任务,就必须保证编程语言写出的程序决不能 ...
- Python 基础语法(四)
Python 基础语法(四) --------------------------------------------接 Python 基础语法(三)------------------------- ...
- Python 基础 四 面向对象杂谈
Python 基础 四 面向对象杂谈 一.isinstance(obj,cls) 与issubcalss(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls ...
- 第四章:Python基础の快速认识內置函数和操作实战
本課主題 內置函数介紹和操作实战 装饰器介紹和操作实战 本周作业 內置函数介紹和操作实战 返回Boolean值的內置函数 all( ): 接受一個可以被迭代的對象,如果函数裡所有為真,才會真:有一個是 ...
- python学习第四讲,python基础语法之判断语句,循环语句
目录 python学习第四讲,python基础语法之判断语句,选择语句,循环语句 一丶判断语句 if 1.if 语法 2. if else 语法 3. if 进阶 if elif else 二丶运算符 ...
随机推荐
- centos7.3nginx启动命令
#!/bin/sh # chkconfig: 2345 80 90 # description: Start and Stop nginx #PATH=/usr/local/sbin:/usr/loc ...
- WIFI密码破解全攻略
开篇介绍 目前无线网络加密技术日益成熟.以前的wep加密方式日渐淘汰,因为这种加密方式非常容易破解,当然现在还是有不少使用这种加密方式无线网络.现在大部分的无线网络都是使用wpa/wpa2方式来加密的 ...
- Qt之股票组件-股票检索--支持预览框、鼠标、键盘操作
目录 一.感慨一下 二.效果展示 三.搜索编辑框 1.编辑框 2.预览框 四.相关文章 原文链接:Qt之股票组件-股票检索--支持预览框.鼠标.键盘操作 一.感慨一下 之前做过一款炒股软件,个人觉着是 ...
- 用python的matplotlib和numpy库绘制股票K线均线和成交量的整合效果(含量化验证交易策略代码)
在用python的matplotlib和numpy库绘制股票K线均线的整合效果(含从网络接口爬取数据和验证交易策略代码)一文里,我讲述了通过爬虫接口得到股票数据并绘制出K线均线图形的方式,在本文里,将 ...
- iOS组件化开发一远程私有库的升级(三)
一.远程私有库的升级 1. 把新增的类 拖入到 classes 文件夹中 : 2. 修改 pod.spec 文件的 s.verson = ‘0.2.0': 二.更新远程仓库 1.cd 到本地仓库的位置 ...
- ConnectionPool实现redis在python中的连接
这篇文章主要介绍了Python与Redis的连接教程,Redis是一个高性能的基于内存的数据库,需要的朋友可以参考下 今天在写zabbix storm job监控脚本的时候用到了python的re ...
- Python 爬虫从入门到进阶之路(十八)
在之前的文章我们通过 scrapy 框架 及 scrapy.Spider 类做了一个<糗事百科>的糗百爬虫,本章我们再来看一下相较于 scrapy.Spider 类更为强大的 CrawlS ...
- 基于go语言结合微信小程序开发的微商城系统
最近在慕课网上录制了一门<Golang微信小程序微商城系统原型>,这门免费课程特别适合在校大学生或者刚毕业的大学生,go语言初学者以及想要从事微商城开发项目入门的小伙伴们来学习.在课程当中 ...
- android_layout_relativelayout(二)
官网上的一个xml文件: <?xml version="1.0" encoding="utf-8"?><RelativeLayout xmln ...
- MyBatis从入门到精通:第一章配置MyBatis
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC ...