1.计算某一日期为本年的第几天
year=int(input('year:\n'))
month=int(input('month:\n'))
day=int(input('day:\n'))
months=(0,31,28,31,30,31,30,31,31,30,31,30)
i=0
sum=0
if 0<=month<=12:
for i in range(0,month):
sum+=months[i]
else:
print('error')
sum+=day
leap=0
if(year%400==0) or ((year%4==0) and (year%100!=0)):
leap=1
if(leap==1) and (month>2):
sum+=1
print('%d年%d月%d日为今年的第%d天' %(year,month,day,sum))
2.猜拳小游戏
import random
while True:
player = input('请输入 1.剪刀 2.石头 3.布\n')
num1 = int(player)
num2 = random.randint(1, 3)
if num1==num2:
print('平局')
print(num1,num2)
elif ((num1==1)and(num2==3)) or ((num1==2)and(num2==1))or((num1==3)and(num2==2)):
print('恭喜您赢了')
print(num1, num2)
else:
print('您输了')
print(num1, num2)
while True:
flag=1#设置flag标志
chaa = input('请选择 1.继续游戏 0.结束')
num=int(chaa)
if num==0:
flag=0
break
elif num!=1:
print('输入正确的数字')
else:
break
if flag==0:
break
3.反转列表
[0,1,2,3,4,5,6,7,8,9]
方法一:[ : :-1]
方法二:
arr=[0,1,2,3,4,5,6,7]
arr1=[]
for i in arr:
arr1.insert(0,i)
print(arr1)
4.删除列表中索引为奇数(偶数)的元素
删除偶数:[ : :2]
删除奇数:[1 : : 2]
5.从列表中删除元素‘x’
arr=[True,1,0,'x',False,'x',2,True]
for i in arr:
if i=='x':
arr.remove(i)
print(arr)
6.若 a = [1,2,3],令 b = a,执行 b[0] = 9, a[0]亦被改变。为何?如何避免?
a = [1,2,3]
b = a
id(a) == id(b) # 对象a和对象b在内存中是同一个,所以会出现关联
True
b = a.copy() # 正确的做法是复制一个新的对象
id(a) == id(b)
False
7.将二维结构 [[‘a’,1],[‘b’,2]] 和 ((‘x’,3),(‘y’,4)) 转成字典。
a=[['a',1],['b',2]]
b=[['x',3],['y',4]]
a1=dict(a)
b1=dict(b)
8.找到列表中出现最频繁的数字
a=[8,5,2,4,3,6,6,6,1,4,5]
print(max(set(a),key=a.count))
9.将二维列表转换为一维列表
方法一:sum([[1], ['a','b'], [2.3, 4.5, 6.7]],[])
方法二:
arr=[[1],['a','b'],[2.3,4.5,6.7]]
b=[]
for row in arr:
for col in row:
b.append(col)
print(b)
方法三:
from itertools import chain
arr=[[1],['a','b'],[2.3,4.5,6.7]]
print(list(chain(*arr)))
10.数字列表求和
方一:sum(arr)
方二:
arr=[0,1,2,3,4,5,6,7,8]
sum=0
for i in range(0, len(arr)):
sum+=arr[i]
print(sum)
11.排序'129 38 3 1240' --> '3 1240 38 129'
str='129 38 3 1240'
d={}
for i in str.split():
d[i]=int(i)
def countNum():
numbers = []
for i in list(d.values()):
sum = 0
while i > 0:
sum += i % 10
i = int(i / 10)
numbers.append(sum)
return numbers
num=countNum()
n=0
for i in d.keys():
d[i]=num[n]
n+=1
print(d)
d1=sorted(d.items(),key=lambda item:item[1])
print(dict(d1))
k1=[]
for i in dict(d1).keys():
k1.append(i)
print(k1)
str1=' '.join(k1)
print(str1)