(1)变量、常量、程序交互、数据类型、bool、基本运算符
什么是变量
变量由变量名和变量值组成
name = 'Alex Li'
这个算式就是将一个值赋予给变量,也就是声明变量的意思
name 就是一个变量,也是一个变量的名字
'Alex Li' 就是一个变量值
格式就是变量名=变量值
变量名只能是字母、数字或者下划线的任意组合 变量名的第一个字符不能是数字
变量其实就是程序在内存中开辟了一块空间,将值存储进去,再让变量名指向值所在的内存地址
PS:如果两个变量名不同,变量的值相同,那么由于Python为了节省内存空间,相同的值不会再占用新的空间,都会指向一个相同的值所在的内存地址 但是仅限于短字符,长字符就没有优化机制,优化机制在-5~257的数字范围也有效
PS:2个相同的变量名但是两个值不同,那么后面的值会覆盖前面的值
变量名称的定义养成好习惯
age_of_oldboy 标准格式,清晰易读
ageofoldboy 错误格式
变量格式:变量名称 = (赋值运算符)值,如x=1 1
变量名称一定要形象:如DATE=2018-04-11,DATE代表日期
变量名称一定要注意大小写,大写和小写代表的是不同的变量
定义变量会有:id,type,value
等号比较的是value
x='Info Egon:18'
y='Info Egon:18'
x == y
True
is比较的是id x is y
False
以下关键字不能用作变量名 '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'
什么是常量
常量即指不变的量,如π=3.141592653...,或在程序运行过程中不会改变的量
例:人的年龄会变,这个就是变量,如果年龄不变了,就是常量
在Python中没有一个专门的语法代表常量,程序员约定俗成用变量名全部大写代表常量
例:AGE_OF_OLDBOY = 56
PS:* 一旦常量被更改,程序就会报错 *
程序的交互
#!/usr/bin/env python # 申明文件存放的路径
# -*- coding: utf-8 -*- #指定编码
#filename : xxx.py #申明文件的名称
input()函数是用来接收一个标准数据,返回类型为string。其实就是让程序读取用户输入的内容
为了知道每一组或者行的代码用处,必须给代码加上注释,代码注释可分为单行和多行
单行注释用 ‘ # ’这个符号,多行注释用'''注释内容''' 用三引号
PS:*注释可用中文和英文,但是绝对不能用拼音
PS:* 不用每一行都加注释,只需要在自己觉得重要或者不好理解的部分加注释即可
#在python3中
input:用户输入任何值,都存成字符串类型
#在python2中
input:用户输入什么类型,就存成什么类型
raw_input:等于python3的input
基本数据类型
什么是数据类型?
对常用的各种数据类型进行明确的划分,比如你想让计算机进行数值运算,你就要传数字给他,你想让计算机处理文字,你就要传字符串类型给他
PS:* Python中有很多种数据类型,数字、字符串和布尔只是其中的三种 *
数字
int(整型)
定义:age=10 #age=int(10)
用于标识:年龄,等级,身份证号,qq号,个数
32位系统上,整数的位数32位,取值范围-2**31 ~ 2**31-1,即-2147483648~2147483647
64位系统上,整数的位数64位,取值范围-2**63~ 2**63-1,即-9223372036954775808~9223372036854775807
float(浮点型)
定义:salary=3.1 #salary=float(3.1)
用于标识:工资,身高,体重,
long(长整型)
python的长整数没有指定位宽,即Python没有限制长整数数值的大小,但实际上由于机器内存有限,我们使用长整数的数值不可能无限大
PS: Python2起,如果整数发生溢出,Python会自动将整数数据转换成长整数,所以在长整数数据后面不加字母大写L也会导致严重后果
PS: Python3里不再有long(长整数)类型,全部都是int(整数)
字符串
Python中加了“引号”的字符都被认为是字符串
例:name = “Alex Li” 字母加双引号, age = “22” 数字加双引号, msg = '''My name is Alex''' 三引号, hoem = 'shangdong' 单引号
用于标识:描述性的内容,如姓名,性别,国籍,种族
PS:单引号和双引号没有任何区别,只有在整句语句里出现单引号,那么前后就必须用双引号,否则Python无法区分
PS: 三引号的作用就是在多行字符串的时候必须用三引号
PS:Python中字符串是不可修改对象,所以要修改字符串必须赋值变量去修改
字符串的拼接
数字可以进行加减乘除,字符串也是可以的。但是字符串只能进行相加或者相乘的运算
例:name = 'Aliex'
>>>age = '22'
>>>name + age
>>>'Aliex22'
>>>name * 10
>>>AliexAliexAliexAliexAliexAliexAliexAliexAliexAliex
PS:字符串的拼接只能是双方都是字符串,不能跟数字或其他类型拼接
PS:字符串拼接(只能在字符串之间进行,且只能相加或相乘)
bool布尔型
我们编写程序让计算机运行时,应该是让计算机无限接近人脑,或者说人脑能干什么,计算机就应该能干什么,人脑的主要作用是数据运行与逻辑运算,此处的布尔类型就模拟人的逻辑运行,即判断一个条件成立时,用True标识,不成立则用False标识
布尔类型只有两个值,一个是Ture(真),一个是False(假),主要用来做逻辑判断
例:比如有两个值,a = 5 ,b = 6
我们肯定知道 a > b 是不成立的
计算机如何知道这个算式不成立,就是用到布尔型
a = 5
b = 6
a > b #由于算式不成立
False #返回的类型就是假
a < b #由于算式成立
True #返回的类型就是真
PS:所有数据类型都自带布尔值
1、None,0,空(空字符串,空列表,空字典等)三种情况下布尔值为False
2、其余均为真
计算机可以进行很多种运算,按种类分为算数运算、比较运算、逻辑运算、赋值运算、成员运算、身份运算、位运算
算数运算
变量: a = 10, b = 20
比较运算|(用到bool布尔逻辑)
变量: a = 10, b = 20
赋值运算
变量: a = 10, b = 20
逻辑运算
身份运算
PS:is比较的是id,而==比较的是值
逻辑运算
布尔逻辑操作真值(true或false来表示)
逻辑层运算符作用就是用来组合布尔值(not、and、or、=)
布尔运算优先级 == > != > not > and > or (从高到低)
a ==b (==就是逻辑相等)(规律就是相同的肯定是True,不同就是False)
a !=b (!就是检查下是否不同,规律就是相同False,不同True)
a and b(逻辑与)(规律就是ab不同就是False,相同ab是什么值就是什么值)
a or b(逻辑或)(规律就是至少有一个是True才会返回时true)(or的判断是条件不是值)
not b(逻辑非)(规律就是结果与变量想反)
PS:最好使用括号来区别优先级