day6 作业

1.已知一个列表,求列表中心元素。

答案:
# author_lorry   
# date: 2018/11/12
import random
import string
n = input("你想看奇数还是偶数:?输入奇数or偶数")
if n == "奇数":
    flag = True
    while flag:
        a = random.randint(1,10)
        if a % 2 ==0:
            flag = False
if n == "偶数":
    flag = True
    while flag:
        a = random.randint(1,10)
        if a % 2 !=0:
            flag = False
i = 1   #此处用来生成随机数字和字母,然后添加在列表中
list1 = []
list1_middle =[ ]
while i <a:
    str1 = string.ascii_letters
    str11 = random.choice(str1)
    list1.append(str11)
    num = random.randint(1,20)
    list1.append(num)
    num1 = random.randint(1,20)
    list1.append(num1)
    i += 1
print(list1)
list1_len = len(list1)
if list1_len % 2 == 0:
    middle_item1 = list1[int(list1_len/2-1)]
    list1_middle.append(middle_item1)
    middle_item2 = list1[int(list1_len/2)]
    list1_middle.append(middle_item2)
if list1_len % 2 != 0:
    middle_item1 = list1[int(list1_len//2)]
    list1_middle.append(middle_item1)
print(list1_middle)

2.已知一个列表,求所有元素和。

答案:
# author_lorry   
# date: 2018/11/12
import random
n = int(input("列表中几个数字求和?"))
m = int(input("几位数求和?"))
num1 = []
for i in range(n):
    num = random.randint((10**(m-1)),1*(10**m)-1)
    num1.append(num)
print(num1)
sum_num1 = sum(num1)
print(sum_num1)

3.已知一个列表,输出所有奇数下标元素。

答案:
# author_lorry
# date: 2018/11/12
import random
import string
i = 1   
list1 = []
list1_jishu  =[]
while i <5: #此处用来生成随机数字和字母,然后添加在列表中
    str1 = string.ascii_letters
    str11 = random.choice(str1)
    list1.append(str11)
    num = random.randint(1,20)
    list1.append(num)
    i += 1
print(list1)
len_list1 = len(list1)
for index in range(1,len_list1,2):
    jishu_yuansu = list1[index]
    list1_jishu.append(jishu_yuansu)
print(list1_jishu)

4.已知一个列表,输出所有元素中,值为奇数的。

答案:
# author_lorry
# date: 2018/11/12
import random
import string
list1 = []
jishu_value =[ ]
oushu_value = []
i = 0
while i <=10:
    num = random.randint(1,20)
    list1.append(num)
    str1 = string.ascii_letters
    str11 = random.choice(str1)
    list1.append(str11)
    num1 = random.randint(1,20)
    list1.append(num1)
    i += 1
print("生成的随机列表为:",list1)
print()
for item in list1:
    if str(item).isdigit():
        num_item = int(item)
        if num_item %2 !=0:
            jishu_value.append(num_item)
        else:
            oushu_value.append(num_item)
    else:
        print("%s"%item,end=" ")
print("不是数字")
print()
print(oushu_value,"是偶数")
print(jishu_value,"是奇数")

5.已知一个列表,将所有元素乘二。

答案:

若是将元素来两遍

# author_lorry
# date: 2018/11/12
import random
import string
list1 = []
i = 0
while i <=3:
    num = random.randint(1,20)
    list1.append(num)
    str1 = string.ascii_letters
    str11 = random.choice(str1)
    list1.append(str11)
    num1 = random.randint(1,20)
    list1.append(num1)
    i += 1
print("生成的随机列表为:",list1)
list2 = list1*2
print(list2)

若是列表中数值元素2倍的形式。

# author_lorry
# date: 2018/11/12
#若是列表中数值元素2倍的形式。
import random
import string
list1 = []
list2 =[ ]
i = 0
while i <=3:
    num = random.randint(1,20)
    list1.append(num)
    num1 = random.randint(1,20)
    list1.append(num1)
    i += 1
print("生成的随机列表为:",list1)
#5.已知一个列表,将所有元素乘二。
for item in list1:
    new_item = item*2
    list2.append(new_item)
print(list2)

6.有一个长度是10的列表,数组内有10个人名,要求去掉重复的

答案:

1.使用循环进行去重

names = ["lorry","lorrybz","lorry123","lorry","小明","小明","小红","小明","狗蛋","二狗子",]
index = 0
while index < len(names):
    i = 1
    while index+i < len(names):
        if names[index] ==names[index+i]:
            names.remove(names[index+i])
            print(names)
        i+=1
    index +=1
print()
print("去重后的名字为",names)

1.使用集合快速去重

names = ["lorry","lorrybz","lorry123","lorry","小明","小明","小红","小明","狗蛋","二狗子",]
names1 = set(names)
print(names1)

例如:names = ['张三', '李四', '大黄', '张三'] -> names = ['张三', '李四', '大黄']

7.已经一个数字列表(数字大小在0~6535之间), 将列表转换成数字对应的字符列表

例如: list1 = [97, 98, 99] -> list1 = ['a', 'b', 'c']

答案:
# author_lorry
#list1 = [97, 98, 99]  -> list1 = ['a', 'b', 'c']
import random
i = 0
list1 = []
list2 = []
while i <= 10:
    num = random.randint(0,6535)
    list1.append(num)
    i += 1
print(list1)
i = 0
while i < len(list1):
    item = int(list1[i])
    chr_item = chr(item)
    list2.append(str(chr_item))
    i +=1
print(list2)
二、
# author_lorry
num = []
list = []
for i in range(6536):
    new = chr(i)
    list.append(str(new))
print(list)
# author_lorry
import random
i = 0
list1 = []
list2 = []
while i <= 10:
    num = random.randint(0,6535)
    list1.append(num)
    i += 1
print(list1)
for item in list1:
    chr_item = chr(item)
    list2.append(str(chr_item))
print(list2)

8.用一个列表来保存一个节目的所有分数,求平均分数(去掉一个最高分,去掉一个最低分,求最后得分)

答案:
# author_lorry
import random
scores = []
n = int(input("几个评委随机打分:?"))
new_scores = []
for _ in range(n):
    score = random.randint(700,1000)
    scores.append(score)
    scores.sort()
print(scores)
aa = scores.index(max(scores))
bb = scores.index(min(scores))
a = scores.pop(aa)
b = scores.pop(bb)
new_scores = scores
len_new_scores = len(new_scores)
average_new_scores = sum(new_scores)/len_new_scores
print("%d个评委打分,在去掉最高分%d,最低分%d后,平均得分为%s"%(n,a,b,average_new_scores))

9.有另个列表A和B,使用列表C来获取两个列表中公共的元素

答案:

例如: A = [1, 'a', 4, 90] B = ['a', 8, 'j', 1] --> C = [1, 'a']

答案:
# author_lorry
import random
import string
list1 = []
for i in range(10):
    str1 = string.ascii_letters
    str11 = random.choice(str1)
    list1.append(str11)
    num = random.randint(1,20)
    list1.append(num)
    num1 = random.randint(1,20)
    list1.append(num1)
    i += 1
list2 = []
for i in range(10):
    str1 = string.ascii_letters
    str11 = random.choice(str1)
    list2.append(str11)
    num = random.randint(1,20)
    list2.append(num)
    num1 = random.randint(1,20)
    list2.append(num1)
    i += 1
print(list1) #生成随机含有字母和数字的列表
print(list2)
public_yuansu = []
for item in list1:
    index = 0
    while index <= len(list2)-1:
        if item == list2[index]:
            public_yuansu.append(item)
        index += 1
public_yuansu=list(set(public_yuansu))  #  因为随机列表的生成可能有重复,因此对公共元素的列表进行去重
print(public_yuansu)

使用 in进行查找。

import random
import string
list1 = []
for i in range(10):
    str1 = string.ascii_letters
    str11 = random.choice(str1)
    list1.append(str11)
    num = random.randint(1,20)
    list1.append(num)
    num1 = random.randint(1,20)
    list1.append(num1)
    i += 1
list2 = []
for i in range(10):
    str1 = string.ascii_letters
    str11 = random.choice(str1)
    list2.append(str11)
    num = random.randint(1,20)
    list2.append(num)
    num1 = random.randint(1,20)
    list2.append(num1)
    i += 1
print(list1)
print(list2)  #生成随机含有字母和数字的列表
public_yuansu = []
for item in list1:
    if item in list2:
        public_yuansu.append(item)
print(public_yuansu)   #打印出两个列表的公共元素
index = 0            #  因为随机列表的生成可能有重复,因此对公共元素的列表进行去重
while index < len(public_yuansu):
    i = 1
    while index +i < len(public_yuansu):
        if public_yuansu[index] == public_yuansu[index+i]:
            public_yuansu.remove(public_yuansu[index+i])
        i +=1
    index += 1
print(public_yuansu)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,440评论 5 467
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,814评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,427评论 0 330
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,710评论 1 270
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,625评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,014评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,511评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,162评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,311评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,262评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,278评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,989评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,583评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,664评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,904评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,274评论 2 345
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,856评论 2 339

推荐阅读更多精彩内容

  • 今年是中国实施“十三五”规划开局之年,我们积极适应和引领经济发展新常态,坚持全面深化改革,坚持创新驱动发展,加快经...
    Sharon667阅读 172评论 0 0
  • 1. 编写一个函数,求1+2+3+...+N def sum1(num):num1=1for x in range...
    暖心人桂阅读 180评论 0 0
  • 1.控制台输入年龄,根据年龄输出不同的提示 (例如:老年人,青壮年,成年人,未成年,儿童) 2.计算5的阶乘 5!...
    Smilebest阅读 388评论 0 0
  • 1.控制台输入年龄,根据年龄输出不同的提示(例如:老年人,青壮年,成年人,未成年,儿童) 代码 测试结果 2.计算...
    xdxh阅读 279评论 0 0
  • 1.控制台输入年龄,根据年龄输出不同的提示(例如:老年人,青壮年,成年人,未成年,儿童) 2.计算5的阶乘 5!的...
    逆流而上_2eb6阅读 258评论 0 0