知识点:
元组(tuple)
定义:
是特殊的序列类型,一旦被创建就不能修改,使得代码更安全
表示方法:('red’,'blue','green')
访问方式:同list
一般用于表示固定数据项、函数多返回值等
特点:
元组中的元素可以是不同类型的
元组中各元素存在先后关系,可通过索引访问
元组与列表的区别
元组是不可变的,列表是可变的
元组通常由不同的数据组成,列表通常是由相同类型的数据组成
元组表示的是结构,列表表示的是顺序
集合
定义:
python中的集合(set)类型同数学中的集合概念一致,即包含0或多个数据项的无序组合
集合中的元素不可重复
集合是无序组合,没有索引和位置的概念
set()函数用于集合的生成,返回结果是一个无重复且排序任意的集合
集合通过用于表示成员间的关系、元素去重等
操作:
字典:
定义:
字典类型(dict)是“键-值”数据项的组合,每个元素是一个键值对
字典类型数据通过映射查找数据项
映射:通过任意键查找集合中的值得过程
字典类型以键为索引,一个键对应一个值
字典类型的数据无序
输入某年某月某日,判断这一天是一年中的第几天?
from _datetime import datetime
# 判断是否是闰年,是,返回true
def is_leap_year(year):
is_leap = False
if (year % 400 == 0) or ((year % 4 == 0) and (year % 100 != 0)):
is_leap = True
return is_leap
def main():
date_str = input('请输入日期(yyyy/mm/dd):')
date = datetime.strptime(date_str, '%Y/%m/%d')
year = date.year
month = date.month
day = date.day
day_of_month_tuple = (31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31)
days = sum(day_of_month_tuple[:month-1])+day
if is_leap_year(year) and year > 2:
days += 1
print(days)
if __name__ == '__main__':
main()