练习31:

题目:

请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。

分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语句判断第二个字母。

程序:

letter = input("please input:")

# while letter  != 'Y':

if letter == 'S':
print('please input second letter:')
letter = input("please input:")
if letter == 'a':
print('Saturday')
elif letter == 'u':
print('Sunday')
else:
print('data error') elif letter == 'F':
print('Friday') elif letter == 'M':
print('Monday') elif letter == 'T':
print('please input second letter')
letter = input("please input:") if letter == 'u':
print('Tuesday')
elif letter == 'h':
print('Thursday')
else:
print('data error') elif letter == 'W':
print('Wednesday')
else:
print('data error')```

输出结果:

please input:F
Friday

练习32:

题目:

按相反的顺序输出列表的值。

程序:

a = ['one', 'two', 'three']
for i in a[::-1]:
print(i)

输出结果:

three
two
one

练习33:

题目:

按逗号分隔列表。

程序:

L = [1, 2, 3, 4, 5]
s1 = ','.join(str(n) for n in L)
print(s1)

输出结果:

1,2,3,4,5

练习34:

题目:

练习函数调用。

程序:

def hello_world():
print('hello world') def three_hellos():
for i in range(3):
hello_world() if __name__ == '__main__':
three_hellos()

输出结果:

hello world
hello world
hello world

练习35:

题目:

文本颜色设置。

程序:

class bcolors:
HEADER = '\033[95m'
OKBLUE = '\033[94m'
OKGREEN = '\033[92m'
WARNING = '\033[93m'
FAIL = '\033[91m'
ENDC = '\033[0m'
BOLD = '\033[1m'
UNDERLINE = '\033[4m' print(bcolors.OKBLUE + "成功的颜色字体?" + bcolors.ENDC)

输出结果:

成功的颜色字体?

练习36:

题目:

求100之内的素数。

程序:

# 输出指定范围内的素数

# 用户输入数据

lower = int(input("输入区间最小值: "))
upper = int(input("输入区间最大值: ")) for num in range(lower, upper + 1):
# 素数大于 1
if num > 1:
for i in range(2, num):
if (num % i) == 0:
break
else:
print(num)

输出结果:

输入区间最小值: 1
输入区间最大值: 100
2
3
5
7
11
13
17
19
23
29
31
37
41
43
47
53
59
61
67
71
73
79
83
89
97

练习37:

题目:

对10个数进行排序。

分析:

可以利用选择法,即从后9个比较过程中,选择一个最小的与第一个元素交换,下次类推,即用第二个元素与后8个进行比较,并进行交换。

程序:

if __name__ == "__main__":
N = 10
# input data
print("请输入10个数字:") l = []
for i in range(N):
l.append(int(input('输入要排序的数字:')))
print("排序之前:")
for i in range(N):
print(l[i],end=" ")
print() # 排列10个数字
for i in range(N - 1):
min = i
for j in range(i + 1, N):
if l[min] > l[j]: min = j
l[i], l[min] = l[min], l[i]
print('排列之后:')
for i in range(N):
print(l[i],end=" ")

输出结果:

请输入10个数字:
输入要排序的数字:1
输入要排序的数字:2
输入要排序的数字:5
输入要排序的数字:7
输入要排序的数字:8
输入要排序的数字:9
输入要排序的数字:5
输入要排序的数字:22
输入要排序的数字:3
输入要排序的数字:0
排序之前:
1 2 5 7 8 9 5 22 3 0
排列之后:
0 1 2 3 5 5 7 8 9 22

练习38:

题目:

求一个3*3矩阵主对角线元素之和。

分析:

利用双重for循环控制输入二维数组,再将a[i][i]累加后输出。

程序:

if __name__ == '__main__':
a = []
sum = 0.0
for i in range(3):
a.append([])
for j in range(3):
a[i].append(float(input("input num:")))
for i in range(3):
sum += a[i][i]
print(sum)

输出结果:

input num:4
input num:2
input num:3
input num:5
input num:6
input num:1
input num:2
input num:3
input num:7
17.0

练习39:

题目:

有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。

分析:

首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后此元素之后的数,依次后移一个位置。

程序:

if __name__ == '__main__':
# 方法一 : 0 作为加入数字的占位符
a = [1, 4, 6, 9, 13, 16, 19, 28, 40, 100, 0]
print('原始列表:')
for i in range(len(a)):
print(a[i],end=" ")
number = int(input("\n插入一个数字:"))
end = a[9]
if number > end:
a[10] = number
else:
for i in range(10):
if a[i] > number:
temp1 = a[i]
a[i] = number
for j in range(i + 1, 11):
temp2 = a[j]
a[j] = temp1
temp1 = temp2
break
print('排序后列表:')
for i in range(11):
print(a[i],end=" ")

输出结果:

原始列表:
1 4 6 9 13 16 19 28 40 100 0
插入一个数字:5
排序后列表:
1 4 5 6 9 13 16 19 28 40 100

练习40:

题目:

将一个数组逆序输出。

分析:

用第一个与最后一个交换。

程序:

if __name__ == '__main__':
a = [9, 6, 5, 4, 1]
N = len(a)
print(a)
for i in range(len(a) // 2):
a[i], a[N - i - 1] = a[N - i - 1], a[i]
print(a)

输出结果:

[9, 6, 5, 4, 1]
[1, 4, 5, 6, 9]

Python3.x 基础练习题100例(31-40)的更多相关文章

  1. Python3.x 基础练习题100例(01-10)

    练习01: 题目: 有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? 分析: 可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. ...

  2. Python3.x 基础练习题100例(11-20)

    练习11: 题目: 古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 分析: 兔子的规律为数列1,1,2, ...

  3. Python3.x 基础练习题100例(51-60)

    练习51: 题目: 学习使用 按位与(&) . 分析: 0&0=0; 0&1=0; 1&0=0; 1&1=1. 程序: if __name__ == '__ma ...

  4. Python3.x 基础练习题100例(41-50)

    练习41: 题目: 模仿静态变量的用法. 程序: def varfunc(): var = 0 print('var = %d' % var) var += 1 if __name__ == '__m ...

  5. Python3.x 基础练习题100例(21-30)

    练习21: 题目: 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个.以后每天早上都吃了前 一天剩下的一半零一个.到第10天早上 ...

  6. Python3.x 基础练习题100例(81-90)

    练习81: 题目: 809??=800??+9?? 其中??代表的两位数, 809??为四位数,8??的结果为两位数,9??的结果为3位数.求??代表的两位数,及809*??后的结果. 程序: a = ...

  7. Python3.x 基础练习题100例(91-100)

    练习91: 题目: 时间函数举例1. 程序: if __name__ == '__main__': import time print (time.ctime(time.time())) print ...

  8. Python3.x 基础练习题100例(61-70)

    练习61: 题目: 打印出杨辉三角形. 程序: if __name__ == '__main__': a = [] for i in range(10): a.append([]) for j in ...

  9. Python3.x 基础练习题100例(71-80)

    练习71: 题目: 编写input()和output()函数输入,输出5个学生的数据记录. 程序: N = 5 # stu # num : string # name : string # score ...

随机推荐

  1. 说说 JavaScript中 call和apply

    下面有关JavaScript中 call和apply的描述,错误的是? call与apply都属于Function.prototype的一个方法,所以每个function实例都有call.apply属 ...

  2. Codeforces Round #638 (Div. 2)

    Contest Info Practice Link Solved A B C D E F 4/6 O O Ø  Ø     O 在比赛中通过 Ø 赛后通过 ! 尝试了但是失败了 - 没有尝试 Sol ...

  3. Codeforces Round #675 (Div. 2)【ABCD】

    比赛链接:https://codeforces.com/contest/1422 A. Fence 题意 给出三条边 $a,b,c$,构造第四条边使得四者可以围成一个四边形. 题解 $d = max( ...

  4. win7 & centos7 双系统安装方法

    1.准备 1)Centos7镜像 官方:https://www.centos.org/ 阿里镜像:http://mirrors.aliyun.com/centos/ 2)安装windows7系统的电脑 ...

  5. 【转】Redis数据备份和重启恢复

    一.对Redis持久化的探讨与理解 目前Redis持久化的方式有两种: RDB 和 AOF 首先,我们应该明确持久化的数据有什么用,答案是用于重启后的数据恢复.Redis是一个内存数据库,无论是RDB ...

  6. JPG学习笔记1(附完整代码)

    #topics h2 { background: rgba(43, 102, 149, 1); border-radius: 6px; box-shadow: 0 0 1px rgba(95, 90, ...

  7. nyoj-1236 挑战密室

    挑战密室 时间限制:1 s | 内存限制:128 M 提交 状态 排名 题目描述 R组织的特工Dr. Kong 为了寻找丢失的超体元素,不幸陷入WTO密室.Dr. Kong必须尽快找到解锁密码逃离,否 ...

  8. Leetcode(877)-石子游戏

    亚历克斯和李用几堆石子在做游戏.偶数堆石子排成一行,每堆都有正整数颗石子 piles[i] . 游戏以谁手中的石子最多来决出胜负.石子的总数是奇数,所以没有平局. 亚历克斯和李轮流进行,亚历克斯先开始 ...

  9. Java之大数相加

    之前参加某公司笔试,机试题目是大数相加,两大数是字符串形式,求和. 当时讨巧用的是BigDecimal类,但是发迷糊了,以为b1.add(b2)后,和就加到b1上了,结果一直输出不对. 其实应该是这样 ...

  10. five86-1 (OpenNetadmin RCE+cp命令提权+crunch生成密码字典)

    Vulnhub-Five86-1 实验环境 kali攻击机ip:192.168.56.116 Five86-1靶机ip:192.168.56.121 知识点及工具 nmap扫描 john爆破 Open ...