一、数据类型
1、整数:1,100,-8080,0
十六进制:用0x前缀和0-9,a-f表示
例:0xff00,0xa5b4c3d2
2、浮点数:浮点数是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的
例:1.23x和12.3x是完全相等的
数学写法:1.23,3.14,-9.01
对于很大或者很小的浮点数,把10用e代替,1.23x就是1.23e9或者12.3e8,0.000012可以写成1.2e-5
3、字符串
如果'本身是一个字符需要用""括起来,比如"I'm OK"包含的字符是I,',m,空格,O,K这6个字符
如果既包含'又包含",可以用转义字符\来标识,比如'I\'m \"OK\"!'表示的内容就是I'm "OK"!
\n表示换行,\t表示制表符
字符\本身也要转义,所以\\表示的字符就是\
>>> print('I\'m ok.')
I'm ok.
>>> print('I\'m learning\nPython.')
I'm learning
Python.
>>> print('\\\n\\')
\
\
Python允许用r''表示''内部的字符串默认不转义
>>> print('\\\t\\')
\ \
>>> print(r'\\\t\\')
\\\t\\
Python用'''...'''的格式表示多行内容
>>> print('''line1
... line2
... line3''')
line1
line2
line3
在文本编辑器里面写为:
print('''line1
line2
line3''')
多行字符串'''...'''还可以在前面加上r
>>> print(r'''line1
... line2
... line3''')
line1
line2
line3
4、布尔值:
>>> True
True
>>> False
False
>>> 3 > 2
True
>>> 3 > 5
False
布尔值可以用and,or,not运算
and运算是与运算,只有所有都为True,and运算结果才是True:
>>> True and True
True
>>> True and False
False
>>> False and False
False
>>> 5 > 3 and 3 > 1
True
or运算是或运算,只有其中有一个为True,or运算结果就是True:
>>> True or True
True
>>> True or False
True
>>> False or False
False
>>> 5 > 3 or 1 > 3
True
not运算时非运算,它是一个单目运算符,把True变成False,False变成True:
>>> not True
False
>>> not False
True
>>> not 1 > 2
True
5、空值
空值用None表示,None不能理解为0,因为0是有意义的,而None是一个特殊的空值
二、变量
变量名必须是大小写英文、数字和_组合,且不能用数字开头
Python是动态语言,Java是静态语言
变量本身类型不固定的语言称之为动态语言
静态语言在定义变量时必须指定变量类型,如果赋值的时候类型不匹配,就会报错
Python中:
a = 123 #a是整数
print(a)
a = 'ABC' #a变为字符串
print(a)
在Java中:
int a = 123; //a是整数类型变量
a = "ABC"; //错误:不能把字符串赋给整型变量
和静态语言相比,动态语言更灵活
三、常量
常量是不能变得变量,在Python中,通常用全部大写的变量名表示常量
PI = 3.14159265359
事实上PI是一个变量,Python根本没有任何机制保证PI不会被改变
/除法计算结果是浮点数,即使是两个整数恰好整除,结果也是浮点数:
>>> 10 / 3
3.3333333333333335
>>> 9 / 3
3.0
除法//,称为地板除,只取结果的整数部分:
>>> 10 // 3
3
余数运算%,可以得到两个整数相除的余数:
>>> 10 % 3
1
四、练习
>>> n = 123
>>> print(n)
123
>>> f = 456.789
>>> print(f)
456.789
>>> s1 = 'Hello,world'
>>> print(s1)
Hello,world
>>> s2 = 'Hello, \'Adam\''
>>> print(s2)
Hello, 'Adam'
>>> s3 = r'Hello, "Bart"'
>>> print(s3)
Hello, "Bart"
>>> s4 = r'''Hello,
... Lisa!'''
>>> print(s4)
Hello,
Lisa!
注:Python的整数没有大小限制,而Java对32位整数的范围限制在-2147483648到2147483647
Python的浮点数也没有大小限制,但是超出一定范围就直接表示为inf(无限大)