Python学习(简单应用题1)

1.字典操作1

a = input().split(" ")
d = {}
for i in range(len(a)):
    d[a[i]] = d.get(a[i],0) + 1

ls = list(d.items())
ls.sort(key=lambda x:x[1],reverse=True)
for k in ls:
    print("{}:{}".format(k[0],k[1]))

2.字典操作2

a = {}
while 1:
    b = input()
    if not b:
        break
    else:
        b = b.split()
        a[b[0]] = eval(b[1])
c = list(a.items())
c.sort(key=lambda x:x[1],reverse=True)
m = 0
for i in c:
    m += i[1]
av = m/len(c)
print("最高分课程是{} {},最低分课程是{} {},平均分是{:.2f}".format(c[0][0],c[0][1],c[-1][0],c[-1][1],av))

3.turtle库的使用

1)画一个边长为200的等边三角形

import turtle as t
for i in range(3):
    t.seth(i*120) #逆时针旋转120°的i倍
    t.fd(200) #向前走

2)画一个十字

import turtle as t
for i in range(4):
    t.fd(100)
    t.fd(-100)
    t.seth((i+1)*90)

3)画一个正八边形

import turtle as t
for i in range(8):
    t.fd(100)
    t.seth((i+1)*45)

4)正方形外面画一个与之相接的圆

import turtle as t
t.pensize(2)
for i in range(4):
    t.fd(200)
    t.left(90)
t.left(-45)
t.circle(100*pow(2,0.5))

5)

import turtle as t
ls = [69,292,33,131,61,254]
x_len = 400
y_len = 300
x0 = -200
y0 = -100

t.penup()
t.goto(x0,y0)
t.pendown()

t.fd(x_len)
t.fd(-x_len)
t.seth(90)
t.fd(y_len)

t.pencolor('red')
t.pensize(5)
for i in range(len(ls)):
    t.penup()
    t.goto(x0+(i+1)*50,y0)
    t.seth(90)
    t.pendown()
    t.fd(ls[i])
t.done()

6)随机画5个圆

 

import turtle as t
import random as r
color = ['red','orange','blue','green','purple']
r.seed(1)
for i in range(5):
    rad = r.randint(20,50)
    x0 = r.randint(-100,100)
    y0 = r.randint(-100,100)
    t.color(r.choice(color))
    t.penup()
    t.goto(x0,y0)
    t.pendown()
    t.circle(rad)
t.done()

4.isnumeric()isdigit()的区别

Python中,isnumeric()isdigit()都是用于检查字符串是否仅由数字字符组成的方法,但它们的行为略有不同。

isnumeric()方法用于检查字符串是否仅包含数字字符,包括阿拉伯数字、罗马数字、全角数字等。例如,字符串"123""Ⅳ""๒๒๓"都会返回True。但是,isnumeric()方法也可能返回True对于其他 Unicode 数字字符和数字字符,这些字符可能与阿拉伯数字、罗马数字或全角数字不同。例如,"½""٣"都是数字字符,但它们不是阿拉伯数字、罗马数字或全角数字。

isdigit()方法则只用于检查字符串是否仅包含阿拉伯数字。例如,字符串"123"会返回True,但字符串"Ⅳ""๒๒๓"会返回False。该方法不会将罗马数字、全角数字或其他 Unicode 数字字符视为数字。

因此,isnumeric()isdigit()的主要区别在于它们所包括的数字字符集合不同。isnumeric()检查的数字字符集合更广泛,包括阿拉伯数字、罗马数字、全角数字和其他 Unicode 数字字符。而isdigit()只检查字符串中是否仅包含阿拉伯数字字符。

5.字典操作3

import random
random.seed(2)
pdict = {'Alice':['12313121'],'Bob':['12313121'],'Lily':['12313121']}
a = input()
random
if a in pdict:
    print("{} {} {}".format(a,pdict[a][0],random.randint(1000,9999)))
else:
    print("用户不存在")

6.t.color()和t.pencolor()的区别

在Python的turtle模块中,t.color()t.pencolor()都是用来设置海龟绘制颜色的方法,但它们的作用略有不同。

t.color()方法用于同时设置海龟绘制颜色和填充颜色,即将颜色设置为两个参数之一或四个参数的组合。例如,t.color('red')将设置绘制颜色和填充颜色均为红色,t.color('red', 'blue')将设置绘制颜色为红色,填充颜色为蓝色。

t.pencolor()方法仅用于设置海龟的绘制颜色,而不会影响填充颜色。例如,t.pencolor('red')将设置绘制颜色为红色,而填充颜色不受影响。

因此,t.color()t.pencolor()的区别在于前者可以同时设置绘制和填充颜色,而后者仅用于设置绘制颜色。如果您只想设置海龟的绘制颜色,则应该使用t.pencolor()方法。如果您还想设置填充颜色,则应使用t.color()方法。

7.字典操作4

f = open('adsa.txt','r',encoding="utf-8")
d = {}
for line in f:
    line = line.strip("\n").split(",")
    d[line[2]] = d.get(line[2], [])
f.close()
d = list(d.items())
for i in d:
    f = open('adsa.txt','r',encoding="utf-8")
    for j in f:
        j = j.strip("\n").split(",")
        if j[2] == i[0]:
            i[1].append(j[1])
    f.close()
for i in d: 
    print('{:>4}: {:>4} : {}'.format(i[0],len(i[1]),",".join(i[1])))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值