Python十日谈:第一日-标准类型

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/murphykwu/article/details/53406726

程序 = 数据 + 算法。解方程还需要个x,y,z呢,所以程序当中变量就理所当然的非常基础和重要了。Python相对于其他语言,变量声明更便捷的地方在于,不需要声明变量的类型。因为Python是一种动态类型语言,顾名思义,也就是变量类型在声明的那一刻被Python内置编译器决定。

基本变量

数字

”’
age = 100
weight = 35.6
”’
更多类型的有符号整型、浮点值、复述这些使用场景比较小,为了最小化了解Python,就不深入介绍了。

思考

>>> a = 100
>>> b = 100
>>> a is b
True
>>> a = 1024
>>> b = 1024
>>> a is b
False

这是为什么呢? 因为Python为了节省内存,一般一定范围内的int类型(似乎是-127~128)都是分配同一个内存地址存储数值,显然1024超过了这个范围,所以分配的是另外的内存地址了,所以导致a is b返回False。string类型也有同样的原理。感兴趣的同学自己搜索一下。

字串

>>> stra = 'we23'
>>> stra[1]
'e'
>>> stra[-1]
'3'
>>> stra[1:3]
'e2'

我有特殊的index技巧!!这个就类似Java里面字串类似。使用下标来访问,不过python不仅支持下标,还支持负数的小标(其实就是倒数的下标),而且还支持切片操作。注意[:]操作符。从语言层面就支持字串操作是不是给力很多。要知道日常程序中,字串处理是最普遍的。

列表

>>> lista = [1, 2,'w', "we"]
>>> lista[3]
'we'
>>> lista[-2:-1]
['w']
>>> lista[1:3]
[2, 'w']
>>> lista[0] = 35
>>> lista
[35, 2, 'w', 'we']

列表类似Java里面的数组,可以通过下标访问(当然也支持负数的下标),支持切片,并且里面的每个元素都可以修改。我就不说列表里面的每个元素可以是任意类型这种比较复杂的了,影响我们初学的目的。

元组

>>> tuplea = (1, 2, 'e', 're')
>>> tuplea[1]
2
>>> typlea[1] = 2
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'typlea' is not defined

元组里面的每个元素是不可更改的。BUT,如果元组里面某个元素是列表类型数据,那么列表类型数据内部就可以更改了。元组存储的是每个元素的地址,只改变地址的内容,是没有问题的。

>>> tupleb = (1, 2, ['e', 'r'])
>>> tupleb[2][1] = "gotohell"
>>> tupleb
(1, 2, ['e', 'gotohell'])

字典

字典就是键值对的存储。

>>> dica = {'b':35, 23:45, "we": "po"}
>>> dica[23]
45
>>> dica[1]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 1
>>> dica['b']
35

注意,键值对以“Key:Value”的方式定义。字典里面的每个元素的键都是唯一的,且键值的类型可以为任意类型。非常灵活。

布尔类型

所有的空对象,值为零的数值或者Null对象(None)的布尔值都为False。详细情形如下:

None
False
值为0的整数
0.0
""(空字符串)
[](空列表)
()(空元组)
{}(空字典)

参考文献

  1. Python核心编程

猜你喜欢

转载自blog.csdn.net/murphykwu/article/details/53406726
今日推荐