和学习其他编程语言一样,首先要了解一门语言的数据类型。
Python的数据类型有整型、浮点型、字符串、布尔型、日期时间类型、list列表、set集合、tuple元组、dict词典等。
1、整型
就是数学中的整数,包括负整数。
定义整型的方法:
Python定义变量的语法和其他的编程语言不一样,例如Java定义整型变量的语法:int a = 10;
Python是根据你的变量的值来确定变量的类型。
a = 12就是整型,a = "abc"就是字符串。
2、浮点型
就是数学中的小数。例如:
变量a为浮点型。如果浮点变量的值很多或者很小,则建议用科学计数法定义一个浮点变量。例如:
a = 3.14e9 print(a)。3、字符串
用单引号'、双引号"或者'''三引号扩起来的文本。
下面的代码定义了三个变量,str1和str2的值都是123qaz。
str3的值为:
123qaz
456wsx
'''三引号用于定义多行字符串。
4、布尔型
只有True和False两个值,例如:
布尔类型一般用作条件判断,例如:
a = 1 b = 2 if a > b: print(a) else: print(b)布尔类型还可以用于or、and和not逻辑运算。
or逻辑或运算,当两个布尔变量的值有一个为True时,结果就是True,所有的布尔类型的数值都为False时,结果才是False。例如:
flag1 = True flag2 = False print(flag1 or flag1) flag3 = False flag4 = False print(flag3 or flag4)打印结果:
True
False
and逻辑与运算,只有所有的布尔变量为True是,结果才是True,否则结果是False,例如:
flag1 = True flag2 = False print(flag1 and flag1) flag3 = True flag4 = True print(flag3 or flag4)not逻辑非运算,not False的结果为True,not True的结果为False,这是一个单目逻辑运算符。
5、日期时间类型
Python提供了time模块处理时间。
获取当前时间戳:
>>> import time >>> print(time.time()) 1541082277.3144386time()函数返回的是浮点数。
localtime()函数返回的是一个struct_time元组,struct_time元组中有9个元素,分别代表年、月、日、小时等。
>>> print(time.localtime(time.time())) time.struct_time(tm_year=2018, tm_mon=11, tm_mday=1, tm_hour=22, tm_min=30, tm_sec=56, tm_wday=3, tm_yday=305, tm_isdst=0)struct_time元组中每个元素代表的意义如下:
| 属性 | 值 | 代表的意义 |
|-----|-----|------|
| tm_year | 2018 | 年 |
| tm_mon | 1-12 | 月 |
| tm_mday | 1-31 | 日 |
| tm_hour |0-23 |小时|
|tm_min | 0-59 |分钟|
|tm_sec | 0-61 |秒,61是闰秒 |
|tm_wday| 0-6 |周一到周日,0是周一|
|tm_yday |1-366 | 一年中的第几日|
|tm_isdst |0,1,-1|夏令时标识,1是夏令时,0不是夏令时,默认值是-1|
Harry Potter Gryffindor 90
Hermione Granger Gryffindor 100
Draco Malfoy Slytherin 90
strftime()方法将时间转化为字符串,具体用法如下:
python >>> print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime()))#精确到秒的日期格式 2018-11-01 23:00:36 >>> print(time.strftime('%Y',time.localtime()))#显示年份 2018 >>> print(time.strftime('%m',time.localtime()))#月份 11 >>> print(time.strftime('%d',time.localtime()))#显示日 01 >>> print(time.strftime('%H:%M:%S',time.localtime()))#显示当前的时间 23:01:19 >>> print(time.strftime('%Y-%m-%d',time.localtime()))#显示当前的日期 2018-11-01 >>> print(time.strftime('%U',time.localtime()))#显示一年当中的第几周 43 >>> print(time.strftime('%w',time.localtime()))#显示周几,4表示周四,0表示周日 4 python
两个日期相减。
如果日期是字符串形式,则必须转为秒数才能相减:
datetime.datetime.strptime()方法将字符串格式的日期转换为struct_time元组,time.mktime()方法将struct_time元组日期转为秒。
字符串日期格式和秒互转
字符串日期格式转为秒:
秒转为字符串日期格式:
current_time = time.time() print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(current_time)))