Python的xiao习-04,基础知识1-数据类型

155 阅读5分钟

Python基础知识

Python的语法相对比较简单,采用缩进的方式,例如:

# 这是一行注释,下面的代码是用来判断一个是是否>=0的
a = 100
if a >= 0:
    print("a >=  0")
else:
    print("a < 0")

#开头的语句是一句注释,解释器在解释代码的时候回自动的忽略掉这一行的内容,注释存在的意义是用来让自己和同事在很久以后看到自己代码能一眼明白它的作用。
剩下的每一行都是一个语句,当语句以:结尾时,缩进的语句视为代码块。这表示缩进的内容,是以:结尾的语句的下一层语句。

这样写的好处是让你的代码更加格式化、更加优美,但是,没有规定缩进是几个空格还是一个Tab。所以按照约定俗成的惯例,应该始终坚持使用4个空格作为一次缩进

缩进的另一个好处就是强迫你写出缩进较少的代码,你会倾向于把一段很长的代码拆分成若干函数,从而得到缩进较少的代码。

缩进的坏处就是“复制-粘贴”功能失效了,这是最坑爹的地方。当你重构代码时,粘贴过去的代码必须重新检查缩进是否正确。此外,IDE很难像格式化Java代码那样格式化Python代码。

最后,请务必注意,Python程序是大小写敏感的,如果写错了大小写,程序会报错。

数据类型

数据类型指的是你在获取到一个数据的时候、当前数据的种类,比如说:我们获取到一篇文章的数据,平时我们把它叫做文本,在Python中,我们把它叫做字符串类型;再比如说,我们获取到了一个整数1314,在Python中我们也把它叫做整数类型或者整型。

整数

Python可以处理任意大小的整数,包括负数,在程序中表示方法和数学上的写法一模一样,例如:10,1000,123456798,123456789等等。

浮点数

浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,比如,1.23x10^9^和12.3x10^8^是完全相等的。浮点数可以用数学写法,如1.113.14-8.08,等等。但是对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23x10^9^就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5,等等。

整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运算则可能会有四舍五入的误差

字符串

字符串是以单引号'或双引号"括起来的任意文本,比如'abc'"xyz"等等。请注意,''""本身只是一种表示方式,不是字符串的一部分,因此,字符串'abc'只有abc这3个字符。如果'本身也是一个字符,那就可以用""括起来,比如"I'm good"包含的字符是I'm空格go,o,d这几个字符。

如果字符串内部既包含'又包含"怎么办?可以用转义字符\来标识,比如我想得到字符串 I`m "ok"

`I\`m \"ok\"`

输出的结果就是I`m "ok"

转义符\可以转义很多字符,比如\n表示换行,\t表示制表符,字符\本身也要转义,所以\\表示的字符就是\,我们来试一下

print('I\'m ok')
print('I\'m learning\nPython.')
print('\\\n\\')

结果:

如果文章内有多处换行都使用\n看上去代码会很乱、增加理解难度、可读性不强,所以在Python中允许我们使用……来进行多行文本的输入 例如:

print('''line1
line2
line3''')

多行···

如果你不想让任何转义符生效,可以在''""的外面加上一个r

print(r'line1 \n line2 \n line3')

不换行

布尔值

布尔值和布尔代数的表示完全一致,一个布尔值只有TrueFalse两种结果,要么是True,要么是False。一定要注意大小写
我们可以通过用True、False来表示布尔值,也可以通过布尔运算计算出来:

print(True)
print(False)
print(3>2)
print(3<2)

True && False

布尔值也可以和or,and,not结合使用,例如:

#  or
print(True or True)     #当前行代码最终结果为:True
print(True or False)    #当前行代码最终结果为:True
print(False or True)    #当前行代码最终结果为:True
print(False or False)   #当前行代码最终结果为:False
print(2>1 or 3>2)       #当前行代码最终结果为:True

#  and
print(True and True)    #当前行代码最终结果为:True
print(True and False)   #当前行代码最终结果为:False
print(False and True)   #当前行代码最终结果为:False
print(False and False)  #当前行代码最终结果为:False
print(2>1 and 1>2)      #当前行代码最终结果为:False

# not
print(not True)         #当前行代码最终结果为:False
print(not False)        #当前行代码最终结果为:True
print(not 1<2)          #当前行代码最终结果为:False
print(not 1>2)          #当前行代码最终结果为:True

布尔值常用在判断调教中,例如:

if(1>2):                #if(): 表示如果(1大于2),执行下面缩进的所有代码
    print('一比二大')
    print('这是if后面的条件成立的时候输出的')
else:                   #else:表示如果括号内的条件不成立,执行下面缩进的所有代码
    print('二比一大')

运行结果:

空值

空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。 此外,Python还提供了列表字典等多种数据类型,还允许创建自定义数据类型,后面会慢慢说到。

小结

Python中所有的数据都有类型

  1. 整型 —— 数字中的整数、正负都可以、不限制长度
  2. 浮点型 —— 数字中的小数
  3. 字符串 —— 用',"包括的任意长度的文字和字符都是字符串
  4. 布尔 —— 一个布尔值只有两种结果True,False
  5. 空值
  6. 元组
  7. 字典
  8. ...