周小董 2020-03-01
Python变量
变量是存储在内存中的值。这就意味着在创建变量的时候会在内存中开辟一个空间。
基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。
因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符
变量赋值没什么好说的,就是通过
=去执行赋值语句。这里需要注意的是,Python中有一个新的赋值方法,多个变量赋值,这个还是比较有意思的
123456789101112 | counter = 100 mails = 10.01 # 赋值浮点类型values = 'hello world' # 赋值字符类型print counterprint mailsprint values# 多个变量赋值a, b, c = 1, 10.2, 'paulniu'print a, b, c |
在内存中存储的数据可以有多种类型,例如,一个人的年龄可以用数字表示,姓名用字符表示
为了方便,在Python中定义了一些标准类型,用于存储各种类型的数据
数字类型用于存储数值。
他们是不可改变的的数据类型,这意味着改变数字数据类型会分配一个新的对象
当你指定一个值时,Number对象就会被创建:
12 | var1 = 1var2 = 10 |
你也可以del语句删除一些对象的引用。如下所示
1 | del var1 |
这个地方的操作和Java语言有着非常大的区别。我们都知道,在Java中如果一个变量不再去使用的时候,我们是不需要手动删除变量引用的。java的JVM会在合适的时间去帮我们清除这个内存碎片。但是在Python中,我们是可以自己去删除一些引用,以保证内存的合理使用。
Python支持的四种数字类型如下:
注意:long 类型只存在于 Python2.X 版本中,在 2.2 以后的版本中,int 类型数据溢出后会自动转为long类型。在 Python3.X 版本中 long 类型被移除,使用 int 替代。
字符串或串(String)是由数字、字母、下划线组成的一串字符。
一般记做如下:
1 | s = "abcdefghijklmnnopqrstuvwxyz" |
这里需要特别说明一点,python的字串列表有2种取值顺序:
12345678 | ss = "hello world!"print ss # 输出完整字符串print ss[0] # 输出字符串中第一个字符print ss[2:5] # 数组字符串中第三个和第六个之间的字符串print ss[2:] # 输出字符串中第三个开始后面的字符串print ss * 2 # 输出字符串两次大专栏 拥抱Python(二) 基本语法概述e">print ss + "test" # 输出拼接字符串print ss[-4:] |
输入结果:
除了可以传两个参数之外,还可以传递第三个参数,也就是步长,如下所示:
1234 | # 设置步长print("-" * 100)ss1 = "abcdefghijklmnopqrstuvwxyz"print(ss1[0:20:2]) |
运行结果:
List(列表) 是 Python 中使用最频繁的数据类型。
列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(即嵌套)。
列表用 [ ] 标识,是 python 最通用的复合数据类型。
列表中值的切割也可以用到变量 [头下标:尾下标] ,就可以截取相应的列表,从左到右索引默认 0 开始,从右到左索引默认 -1 开始,下标可以为空表示取到头或尾。
1234567 | # 列表拼接ss2 = ["hello", "world", "!"]ss3 = [100, "python", "!"]ss4 = "paulniu"print("-" * 100)print(ss2 + ss3) |
运行结果:
元组相当于list列表,但是只能赋值一次,不能再次修改
123 | print("-" * 100)ss5 = ("hello", "world", "!", 100);print(ss5) |
运行结果:
字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象集合,字典是无序的对象集合。
两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
字典用”{ }”标识。字典由索引(key)和它对应的值value组成。
123 | ("-" * 100)ss6 = {"key1": "value1", "name": "paulniu", "age": 27, 100: "classname", 101: 10001}(ss6) |
运行结果: