1.变量:可以改变的量,实际具体指的是内存中的一块存储空间
(1)变量的概念
(2)变量的声明
(3)变量的命名
(4)变量的交换
*常量就是不可改变的量,python当中没有明确定义常量的关键字,所以约定俗称把变量名大写就是常量,表示不可改变
(1)变量的概念:可以改变的量就是变量。具体指代的是内存的一块空间
(2)变量的声明:
#1、a =1 ,b =2 #2、a,b = 1,2 #3、a = b = 3
(3)变量的命名:
#字母数字下划线,首字符不能为数字 #严格区分大小写,且不能使用关键字 #变量命名有意义,且不能使用中文哦
(4)变量的交换:
#a,b = b,a
2.python六大标准数据类型# ### 数据类型分类(1)Number 数字类型(int float bool complex)(2)str 字符串类型
(3)list 列表类型 (4)tuple 元组类型 (5)set 集合类型 (6)dict 字典类型 # ### Number数字类型分类: int: 整数类型 (正整数 0 负整数) float: 浮点数类型(1普通小数 2科学计数法表示的小数,例a = 3e-5 #3e-05) bool: 布尔值类型(真True 和 假False) complex:复数类型(声明复数的两种方法)(复数用作于科学计算中,表示高精度的数据,科学家会使用) # ### 容器类型分类 :5个 str : "qwer" list : [1,2,3] tuple: (1,2,3) set : {'a',2,3} dict : {'a':1,'b':2}
变量
# ### 变量:可以改变的量就是变量,实际指代的是内存中的一块空间 #(1)变量的概念 rujia_305 = '刘伟' rujia_305 = '小小' print(rujia_305) #(2)变量的声明 # 1 a = 100 b = 200 print(a) print(b) # 2 a,b = 300,400 print(a , b) # 3 a = b = 500 print(a,b) #(3)变量的命名 ''' 变量的命名 字母数字下划线,首字符不能为数字 严格区分大小写,且不能使用关键字 变量名有意义上,且不能使用中文哦 ''' _sasddasas_sas = 100 #可以这么命名变量名但没有意义 #89asadsadas = 100 会报error错误 print(_sasddasas_sas) adc = 90 ABC = 91 print(abc) # 90 有大小写之分 print(ABC) # 91 有大小写之分 #import 引入 keyword模块 关键字 import keyword print(keyword.kwlist) """ ['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield'] """ # 不要使用关键字 #print = 88 报错 error #print(111) 报错 error abc = '刘伟' hghgjhgjhgjh = '雅马哈' 中文 = '王小' a = '王小' print(中文) #可以正常打印 但是最好不要用中文做变量名 ''' python 支持中文命名变量,但是严禁使用(容易出现乱码,占用空间) utf-8 国际标准编码(可变长的unicode编码)中文字符占用3个字节,英文数字特殊符号占用1个字节 gbk 国标编码,中文字符占用2个字节,英文或者符号占用1个字节 ''' #(4)变量的交换 # 通用写法 a = 20 b = 21 tmp = a #把a(20)赋值给变量tmp a = b #再把b(21)赋值给变量a b = tmp #再把tmp(20)赋值给变量b print(a,b) # 21 20 #python 特有 a = 22 b = 23 a,b = b,a print(a,b) # 23 22 #(5) 定义变量:约定俗成全部变成大写,这个值永远不能改变 SHENFENZHENG = '341234199311202333'
Number:
# ### Number (int float bool complex) # int 整型(正整数 0 负整数) intvar = 255 print(intvar) #type 获取一个值的类型 res = type(intvar) print(res) #int #id 获取一个值的地址 res = id(intvar) print(res) #23424234235 (id值) # 二进制整型 intvar = 0b10 print(intvar) print(type(intvar)) print(id(intvar)) # 八进制整型 intvar = 0o127 print(intvar) print(type(intvar)) print(id(intvar)) # 十六进制整型 intvar = 0xa print(intvar) print(type(intvar)) print(id(intvar))
float、bool、complex
# ### Number(int float bool complex) #(1) float 浮点型 小数 #表达式1 floatvar = 3.14 print(floatvar) print(type(floatvar)) print(id(floatvar)) #表达式2 科学计数法 floatvar = 5.1e4 #相当于 5*10^4 将小数点往后移动4位 51000.0 print(floatvar) #(2) bool 布尔型 True真的 False假的 只有两个值 boolvar = True boolvar = False print(boolvar) print(type(boolvar)) #(3) complex 复数 ''' complex 复数 = 实数+虚数 5+3j 5代表是实数 3j代表是虚数 如果有一个数,他的平方等于-1,那么这个数就是j 表达一个高精度的类型,科学家认为有 ''' # 表达方式1 complexvar = 3-10j complexvar = 20j print(complexvar) # 20j print(type(complexvar)) # complex # 表达方式2 #complex(实数,虚数) comolexvar = complex(3,-10) print(comolexvar) # (3-10j) print(type(complexvar)) # complex
字符串str:
# ### 字符串 str ''' 用引号引用起来的就是字符串''' """ # 转义字符: + 某个字符 (1)将有意义的字符变得无意义 (2)将无意义的字符变得有意义 , 换行 缩进 水平制表符(一般是四个空格的距离) 将 后面的字符直接拉到当前行首,并替换掉之前行首 """ # (1)单引号字符串 '' strvar = '今天是个好日子' print(strvar) print(type(strvar)) # (2)双引号字符串"" str1 = "今天晚上吃饭了吗? 我吃了" #换行 str2 = "今天 晚上吃饭了吗?我吃了" #缩进空格 str3 = "今天晚上吃饭了吗? 我吃了" #替换行首 str4 = "今天晚上吃饭了吗? 我 吃了" print(str4) ''' 今天晚上吃饭了吗? 吃了 ''' # (3)三引号字符串''' """(支持跨行效果) strvar = ''' 今天玩游戏了吗? 没有玩! ''' strvar = """ 今天玩游戏了吗? 没有玩! """ # (4)元字符r"字符串" 不转义字符,原型化输出字符串 strvar = r'E:python_pro ote123' # 为换行,为了不换行直接输出原型就必须在最前面加r print(strvar) #(5) 格式化字符串 ''' 语法:"字符串"%(值1,值2,值3) %d 整型占位符 %f 浮点型占位符 %s 字符串占位符 ''' # %d 整型占位符 strvar = '今天晚上买了%d条鱼吃!'%(2) print(strvar) # %2d 占2位 原字符串默认居右 strvar = '今天晚上买了%2d条鱼吃!'%(2) print(strvar) #今天晚上买了 2条鱼吃! # %-2d 占2位 源字符串默认居左 strvar = '今晚买了%-2d条鱼吃!'%(2) print(strvar) #今天晚上买了2 条鱼吃! # %f 浮点型占位符 strvar = '小小同学今天发工资,发了%f元'%(5899.9) print(strvar) #5899.9 # %.2f 小数点保留2位 strvar = '小小同学今天发工资,发了%.2f元'%(5899.9) print(strvar) #5899,90 # %f 存在四舍五入的情况 strvar = '小小同学今天发工资,发了%.1f元'%(999.98) print(strvar) # 1000.0 # %s 字符串占位符 strvar = '%s今天晚上买了条鱼'%('小小') print(strvar) # 综合案例 strvar = '%s今天晚上买了%d条鱼,花了%f元'%('小小',2,20.7) print(strvar) # 可以全部用%s占位符进行取代 strvar = '%s今天晚上买了%s条鱼,花了%.0f元'%('小小',2,20.7) print(strvar)
list、tuple:
# ### list 列表 ''' 特点:可获取 可修改 有序 ''' listvar = [] print(listvar) print(type(listvar)) #正向索引 0 1 2 3 4 5 listvar = [1,2,3,4,5,6 ] #逆向索引 -6-5-4-3-2-1 #1.获取列表当中的值 res = listvar[3] res = listvar[-3] print(res) # 4 # 获取列表当中最后一个元素 #python 特有(直接通过-1下标获取元素) res = listvar[-1] print(res) # 其他语言通用写法 ''' len 获取容器类型数据的长度,元素的总个数 ''' res = len(listvar) print(res) #6 res = listvar[res-1] print(res) #6 #2.修改列表里面的值 listvar[2] = 'xiaoxiao' print(listvar) #[1,2,'xiaoxiao',4,5,6 ] # ### tuple 元组 ''' 可获取 不可修改 有序''' # 定义一个空元组 tuplevar = () print(tuplevar) print(type(tuplevar)) # 定义一个普通的元组 # 正向索引 0 1 2 3 4 tuplevar = ("刘伟","小小","七七","黄虎","琴琴") # 逆向索引 -5 -4 -3 -2 -1 print(tuplevar) print(type(tuplevar)) # 1.获取元组当中的元组 res = tuplevar[2] res = tuplevar[-3] print(res) # 七七 #2.修改元组当中的元素可以吗? 不可以! tupelvar[1] = '卡卡' print(tuplevar) # 报错 #3.仅仅是单纯的圆括号能代表元组类型吗? tuplevar = (1) #打印结果为1 int类型 # 逗号是标识是否是元祖的标识符 tuplevar = (1,) tuplevar = 2, #这样写 打印出来的类型也是元组 print(tuplevar) print(type(tupelvar)) # ### str 字符串 ''' 可获取 不可修改 有序''' # 0 1 2 3 4 5 6 strvar = "今天是个好天气" -7-6-5-4-3-2-1 #获取字符串中的元素 res = strvar[1] print(res) # 天 #可以修改字符串中的元素吗? 不可以! res[4] = '坏' # 报错 print(strvar) #空字符串 strvar = "" # 表示空字符串 #空格也是字符 strvar = " " #字符串中存在空格 print(strvar) #打印结果为一个空格