1、#输入日期,判断这一天是这一年的第几天?
import datetime
def dayofyear():
year =input("请输入年份:")
month =input("请输入月份:")
day =input("请输入天:")
date1 = datetime.date(year=int(year),month=int(month),day=int(day))
print(date1)
date2 = datetime.date(year=int(year),month=1,day=1)
print(date2)
# return (date1-date2).days+1
print((date1-date2).days+1)
if __name__ =='__main__':
dayofyear()
2、#打乱一个排好序的list对象alist?
import random
alist = [1,2,3,4,5]
random.shuffle(alist)
print(alist)
3、#现有字典 d= {'a':24,'g':52,'i':12,'k':33}请按value值进行排序?
#x[0]代表用key进行排序;x[1]代表用value进行排序。
d = {'a':24,'i':52,'g':12,'k':33}
num =sorted(d.items(),key=lambda x:x[1])
print(num)
4、请反转字符串 "aStr"?
print("aStr"[::-1])
5、#将字符串 "k:1 |k1:2|k2:3|k3:4",处理成字典 {k:1,k1:2,...}
str1 ="k:1|k1:2|k2:3|k3:4"
def str2dict(str1):
dict1 = {}
for itermsin str1.split('|'):
key,value = iterms.split(':')
dict1[key] = value #dict1[key] = int(value)
# return dict1
print(dict1)
if __name__ =='__main__':
str2dict(str1)
#字典推导式
d = {k:int(v)for tin str1.split("|")for k, vin (t.split(":"), )}
print(d)
6、#请按alist中元素的age由大到小排序 True; 由小到大排序 False,默认是正序False
alist = [{'name':'a','age':20},{'name':'n','age':30},{'name':'c','age':25}]
def sort_age():
# return sorted(alist,key=lambda x:x['age'],reverse=True)
print(sorted(alist,key=lambda x:x['name'],reverse=False))#根据name排序
print(sorted(alist,key=lambda x:x['age'],reverse=True))#根据年龄排序
if __name__ =='__main__':
sort_age()
7、下面代码输出结果:
list = ['a','b','c','d','e']
print(list[10:])
代码将输出[],不会产生IndexError错误,就像所期望的那样,尝试用超出成员的个数的index来获取某个列表的成员。例如,尝试获取list[10]和之后的成员,会导致IndexError。然而,尝试获取列表的切片,开始的index超过了成员个数不会产生IndexError,而是仅仅返回一个空列表。这成为特别让人恶心的疑难杂症,因为运行的时候没有错误产生,导致Bug很难被追踪到。
8、#写一个列表生成式,产生一个公差为11的等差数列
print([x*11 for xin range(20)])
9、#给定两个列表,怎么找出他们相同的元素和不同的元素?
list1 = [1,2,3]
list2 = [3,4,5]
set1 =set(list1)
set2 =set(list2)
print(set1)
print(set2)
print(set1 & set2)
print(set1 ^ set2)
10、#请写出一段python代码实现删除list里面的重复元素?
l1 = ['b','c','d','c','a','a']
l2 =list(set(l1))
print(l2)
11、python新式类和经典类的区别?
a. 在python里凡是继承了object的类,都是新式类
b. Python3里只有新式类
c. Python2里面继承object的是新式类,没有写父类的是经典类
d. 经典类目前在Python里基本没有应用
e. 保持class与type的统一对新式类的实例执行a.class与type(a)的结果是一致的,对于旧式类来说就不
一样了。
f.对于多重继承的属性搜索顺序不一样新式类是采用广度优先搜索,旧式类采用深度优先搜索。
12、.python中内置的数据结构有几种?
a. 整型 int、 长整型 long、浮点型 flfloat、 复数 complex
b. 字符串 str、 列表 list、 元祖 tuple
c. 字典 dict 、 集合 set
d. Python3 中没有 long,只有无限精度的 int