美文网首页
01-变量及数据类型

01-变量及数据类型

作者: 蛋挞先生L | 来源:发表于2018-07-22 13:43 被阅读0次

变量

什么是变量

变量就是可以改变的量,比如:

# x+y = 10  
# x = 5  y = ? --->5
# x = 6  y = ? --->4

#那么这个x,y就是变量

变量的赋值:

str1 = "有喜欢的人一定要表白~你丑没关系,万一她瞎呢?"
print(str1)
print(str1)
print(str1)
#第二种赋值方式
str1 = str2 = -1000

print(str1,type(str1),id(str1))
print(str2,type(str2),id(str2))

变量的命名规范:

  • 中文可以使用,但是不推荐,且一般没人用
  • 可以使用数字,但是数字不能在开头
  • 变量名称只能使用数字、字母、下划线
  • 可以使用下划线,但是下划线不能开头
    • 单下划线开头表示变量很重要,不能随意更改
    • 双下划线开头表示为私有变量,其他程序无法调用
  • 严格区分大小写
  • 变量名称要具有描述性
  • 不能使用关键字当作变量名
    • 当变量名与python默认关键字冲突时会报错
    • 当变量名与python默认函数名冲突时会覆盖掉函数的功能

数据类型

python可以自定义数据类型,数据类型,默认的数据类型一共有六种

  • Numbers 数字类型
  • String 字符串
  • List 列表
  • set 集合
  • dict 字典
  • Tuple 元组

Numbers 数字类型

  • int 整数型,即整数

    var = 1
    print(var)
    print(type(var))
    print(id(var))
    
  • float 浮点数,即小数

    var = 3.141592654
    #科学记数法
    var1 = 3141592654e-9   #====>10的-9次方
    print(var,var1)
    print(type(var),type(var1))
    
  • complex 复数

    #实数  5
    #虚数  i 一个数的平方等于-1
    
    var = 5 + 2j
    print(var)
    print(type(var))
    
  • bool 布尔值

    • 布尔值只有两个值:True,False;一般在判断语句中使用
    • 当其他类型数字转换为布尔值时,只有0为False,其他任何数字都为True
    # True    表示肯定的语句
    # False   表示否定的语句
    
    if 5 > 3:
        print("有纹身的都怕热,镶金牙的爱咧嘴。")
    

String 字符串

声明字符串一共有三种方式:

  • 第一种 单引号 变量 = '字符串内容'

    str1 = '有纹身的都怕热,镶金牙的爱咧嘴.'
    print(str1,type(str1))
    
  • 第二种 双引号

    str2 = "有纹身的都怕热,镶金牙的爱咧嘴."
    print(str2,type(str2))
    
  • 第三种 三引号

    • 三引号可以定义多行字符串,但是换行的地方输出时同样也会换行
    str3 = """有纹身的都怕热,镶金牙的爱咧嘴."""
    print(str3,type(str3))
    

三种方法的使用:

  • 当字符串中有单引号或者双引号时,定义的引号用其他两种
  • 当既有单引号又有双引号时,可以用转义字符,也可以用三引号定义
str1 = """ "金星"说:"人不犯我,我不犯人,人若犯我,礼让三分,人若再犯,铲草除根~~~" """
print(str1)

转义字符:

转义字符  作用描述        使用率
\        续行符           *
\\       反斜杠符号(\)     ***
\'       单引号           *****
\"       双引号           *****
\a       响铃
\b       退格(backspace)
\e       转义
\000     空
\n       换行             *****
\v       纵向制表符
\t       横向制表符        *****
\r       回车             *****
\f       换页
\oyy     八进制数,yy代表的字符,例如:\o12代表换行
\xyy     十六进制数,yy代表的字符,例如:\x0a代表换行
\other   其它的字符以普通格式输出

列表

  • 列表就是一系列元素的顺序组合,标识符是[ ],里边的每个元素用逗号区分,列表中可以放置任何数据类型,元素可以随时修改。
  • 列表中可以嵌套任意其他数据类型
#         0   1   2   3  正向序号  (索引-->index)
list1 = ["a","b","c","d"]
#        -4  -3  -2  -1  反向序号  (索引-->index)
print(lise1,type(list1))

# 通过索引取值
print(list1[0],list1[-4])
print(list1[3],list1[-1])

# 通过索引修改元素
list1[2] = "e"
print(list1)

# 可以嵌套列表或其他数据类型
list2 = ["a","b",1,2,["c",3]]
print(list2,type(list2))

# 嵌套取值/改值
#         0   1       2
list3 = ["a","b",[1,2,["c","d"]]]
list3[2][2][1] = "f"
print(list3)

元组

  • 元组是一系列元素的顺序组合,标识符是逗号,初始化之后元组内的元素不能再做修改
  • 元组中可以嵌套任意其他数据类型
# 空元组定义和单一元素元组定义
tuple1 = ()
print(tuple1,type(tuple1))
tuple2 = (1,)
print(tuple2,type(tuple2))

#          0   1   2   3  (正向序号)
tuple1 = ("a","b","c","d")
#         -4  -3  -2  -1  (反向序号)
# 通过索引取值
print(tuple1[0],tuple1[-1])

#组合后的元组不能进行修改
# tuple1[3] = "f"
# print(tuple1)

#嵌套元组取值
tuple3 = ("a",1,("c","2"))
print(tuple3,type(tuple3))

# 嵌套的列表可以通过索引修改列表内内容,但是元组的内存地址不发生变化
tuple4 = ("a","b",[1,2])
print(tuple4,id(tuple4))
tuple4[2][0] = "c"
print(tuple4,id(tuple4))

集合

  • 一组特定数据的无序组合 ,无法查找和修改,所有的元素不能重复,标识符:无
  • 集合中只能嵌套元组
# 空集合定义
set2 = set()
print(set2,type(set2))

# 集合的元素只能是数字类型和字符串
set1 = {1,2,3,"a","b",3,1}
print(set1,type(set1))

# set2 = {1,2,{3,4,"a"}}
# print(set2)

# 常用做运算:补集  交集  差集  并集

字典

  • 字典就是具有键值映射关系的一组无序数据组合,可以修改字典的标志符号:{}
  • 字典的键可以嵌套完全不可更改的数据类型(如,元组嵌套元组),键可以嵌套任意数据类型
#冒号左边为字典的键   冒号右边为键对应的值
#字典的定义
dict1 = {1:2,"花和尚":"鲁智深",9:"史进",1.2:"花荣"}
print(dict1,type(dict1))

#字典只能通过键来索引
print(dict1["花和尚"])

# 字典可以通过键来修改值
dict1[9] = "九纹龙"
print(dict1)

# 字典中可以嵌套列表、元组、集合和字典,但只能作为值出现
dict2 = {"韩寒":"三重门","四大名著":{"吴承恩":"西游记","曹雪芹":"红楼梦","施耐庵":"水浒传","罗贯中":"三国演义"}}
print(dict2["韩寒"])
print(dict2["四大名著"]["曹雪芹"])

分类

  • 非容器类数据类型:number 数字类型

  • 容器类数据类型:

    string 字符串 有序容器

    list 列表 有序容器

    tuple 元组 有序容器

    set 集合 无序容器

    dict 字典 无序容器

练习

1、li=["hello",'seven',["mon",["h","kelly"],'all'],123,446]

​ a. 请输出 “all”
b. 请输出“kelly”
c. 请输出123

2、tu=("alex",[11,22,{"k1":'v1',"k2":["age","name"],"k3":(11,22,33)},44])

​ a.tu变量中的第一个元素"alex"是否可以被修改,如果可以请修改为"ALEX"

3、dict={'k1':"v1","k2":"v2","k3":[11,22,33]}

​ a.请在修改字典中 “k1” 对应的值为 “alex”,输出修改后的字典

相关文章

网友评论

      本文标题:01-变量及数据类型

      本文链接:https://www.haomeiwen.com/subject/apmlmftx.html