Python中数据类型:
1.整数
2.浮点数
3.字符串
4.波尔值
要么为True,要么为False,因为python对大小写很严格,所以要注意这边的大小写
5.空值
空值是Python的一个特殊的值,用None来表示,不能为0
6.列表,字典等
python的变量:
变量:在python程序中,变量是一个用变量名来表示,而变量名的命名规则是数字,字母,下划线的组合,并且数字不能开头。
例如:
num=1(变量num是整数)
str='Hello World'(变量str是字符串)
在python中,=是赋值语句,关键的,python中的同一个变量可以赋值不同的数据类型,例如:
a=1(a是整数)
a="abc"(a是字符串)
这种变量的数据类型不固定的语言称之为动态语言,与之相对应的是静态语言----比如Java语言。静态语言定义变量时需要指定变量的数据类型,如果类型不匹配,就会报错,int a = 123;a="hello";(错误,不能把字符串赋值给整型),所以动态语言相对来说更灵活。
python的变量在计算机中的内存表示时如何呢,当我们写str1 = 'hello'时,python解释器执行了两部操作:第一步在内存中创建了 'hello'字符串;第二部在内存中创建了str1变量,并将其指向'hello'字符串。也可以把变量str1赋值给变量str2,这种操作实际上是把str2变量指向str1变量指向的数据,比如:
str1 = 'hello'
str2 = str1
str1 = 'world'
print str2
上面的打印结果是'hello'。内存创建'hello'字符串和变量str1,并将str1指向'hello',创建str2并指向str1的数据'hello',创建'world'字符串并将str1指向它,但str2没有更改,所以str2还是指向'hello'
python定义字符串
字符串的定义就是用单引号或者双引号括起来表示,如果字符串本身包含单引号,那就用双引号扣起来,同理字符串本身包含双引号,那就用单引号括起来,很好理解。这边唯一要说的问题就是,如果字符串本身既包含单引号,又包含双引号该怎么办,这边就需要引入一个名词“转义”,python中用\来表示转义,例如:'Tom said "I'm ok"',这样写报错,应该要转义,写成:'Tom said "I\'m ok"'。
常用的转义字符:\n:换行
\t:制表符
\\:字符\本身
python中的整数和浮点数
python支持对整数和浮点数直接进行四则混合运算,运算规则和数学的四则运算规则其安全一致的,和数学运算不同的地方是,python的整数运算结果仍然是整数,浮点数运算结果仍然是浮点数,整数和浮点数的混合运算的结果仍然是浮点数。
整数除法除不尽时,依然取整数,扔掉余数,比如:11/4,其及如果为2。python中有求余数的运算,%可以计算余数,比如:11%4,其结果为3。
若要计算精确数值,只需根据整数和浮点数的混合运算的结果仍然是浮点数的规律,将其中一个数值变成浮点数即可,11.0/4,其结果为2.75.
python中波尔类型
要么为True,要么为False,因为python对大小写很严格,所以要注意这边的大小写。波尔类型有以下几种运算:
与运算:只有两个波尔值都为True时,计算结果才为True。
或运算:只要有一个波尔值为True,计算结果就为True。
非运算:把True变成Flase,或者把False变成True。
在pyhton中,波尔类型还可以与其他的数据类型做and、or和not运算,比如:
a = True
print a and 'hello' or 'hi'
其计算结果不是波尔类型,而是字符串'hello',这是为什么呢?
一:Python会把0,空字符串和None看成False,把其他数值和非空字符串看成True;
二:这边就要提到python的and、or运算的一条法则:短路计算。
1.在计算a and b时,如果a为False,根据与运算法则,整个结果必定为False,因此返回a;如果a为True,则整个运算结果取决于b,所以返回b;
2.在计算a or b时,如果a为False,则整个运算结果取决于b,因此返回b;如果a为True,根据或运算法则,整个结果必定为True,因此返回a