练习41:

题目:

模仿静态变量的用法。

程序:

def varfunc():
var = 0
print('var = %d' % var)
var += 1 if __name__ == '__main__':
for i in range(3):
varfunc() # 类的属性 # 作为类的一个属性吧 class Static:
StaticVar = 5 def varfunc(self):
self.StaticVar += 1
print(self.StaticVar) print(Static.StaticVar)
a = Static()
for i in range(3):
a.varfunc()

输出结果:

var = 0
var = 0
var = 0
5
6
7
8

练习42:

题目:

学习使用auto定义变量的用法。

分析:

没有auto关键字,使用变量作用域来举例吧。

程序:

num = 2

def autofunc():
num = 1
print('internal block num = %d' % num)
num += 1 for i in range(3):
print('The num = %d' % num)
num += 1
autofunc()

输出结果:

The num = 2
internal block num = 1
The num = 3
internal block num = 1
The num = 4
internal block num = 1

练习43:

题目:

模仿静态变量(static)另一案例。

分析:演示一个python作用域使用方法

程序:

class Num:
nNum = 1 def inc(self):
self.nNum += 1
print('nNum = %d' % self.nNum) if __name__ == '__main__':
nNum = 2
inst = Num()
for i in range(3):
nNum += 1
print('The num = %d' % nNum)
inst.inc()

输出结果:

The num = 3
nNum = 2
The num = 4
nNum = 3
The num = 5
nNum = 4

练习44:

题目:

两个 3 行 3 列的矩阵,实现其对应位置的数据相加,并返回一个新矩阵:

X = [[12,7,3],

[4 ,5,6],

[7 ,8,9]]

Y = [[5,8,1],

[6,7,3],

[4,5,9]]

分析:

创建一个新的 3 行 3 列的矩阵,使用 for 迭代并取出 X 和 Y 矩阵中对应位置的值,相加后放到新矩阵的对应位置中。

程序:

X = [[12,7,3],
[4 ,5,6],
[7 ,8,9]] Y = [[5,8,1],
[6,7,3],
[4,5,9]] result = [[0,0,0],
[0,0,0],
[0,0,0]] # 迭代输出行 for i in range(len(X)):
# 迭代输出列
for j in range(len(X[0])):
result[i][j] = X[i][j] + Y[i][j] for r in result:
print(r)

输出结果:

[17, 15, 4]
[10, 12, 9]
[11, 13, 18]

练习45:

题目:

统计 1 到 100 之和。

程序:

tmp = 0
for i in range(1, 101):
tmp += i
print('The sum is %d' % tmp)

输出结果:

The sum is 5050

练习46:

求输入数字的平方,如果平方运算后小于 50 则退出。

程序:

TRUE = 1
FALSE = 0 def SQ(x):
return x * x print('如果输入的数字小于 50,程序将停止运行。')
again = 1
while again:
num = int(input('请输入一个数字:'))
print('运算结果为: %d' % (SQ(num)))
if SQ(num) >= 50:
again = TRUE
else:
again = FALSE

输出结果:

如果输入的数字小于 50,程序将停止运行。
请输入一个数字:8
运算结果为: 64
请输入一个数字:2
运算结果为: 4

练习47:

题目:

两个变量值互换。

程序:

def exchange(a, b):
a, b = b, a
return (a, b) if __name__ == '__main__':
x = 10
y = 20
print('x = %d,y = %d' % (x, y))
x, y = exchange(x, y)
print('x = %d,y = %d' % (x, y))

输出结果:

x = 10,y = 20
x = 20,y = 10

练习48:

题目:

数字比较。

程序:

if __name__ == '__main__':
i = 10
j = 20
if i > j:
print('%d 大于 %d' % (i, j))
elif i == j:
print('%d 等于 %d' % (i, j))
elif i < j:
print('%d 小于 %d' % (i, j))
else:
print('未知')

输出结果:

10 小于 20

练习49:

题目:

使用lambda来创建匿名函数。

程序:

MAXIMUM = lambda x, y: (x > y) * x + (x < y) * y
MINIMUM = lambda x, y: (x > y) * y + (x < y) * x if __name__ == '__main__':
a = 10
b = 20
print('The largar one is %d' % MAXIMUM(a, b))
print('The lower one is %d' % MINIMUM(a, b))

输出结果:

The largar one is 20
The lower one is 10

练习50:

题目:

输出一个随机数。

分析:

使用 random 模块。

程序:

import random

# 生成 10 到 20 之间的随机数
print(random.randint(10, 20))

输出结果:

19

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

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

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

  2. Python3.x 基础练习题100例(31-40)

    练习31: 题目: 请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母. 分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语句判断第二个字母. 程序 ...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

随机推荐

  1. Codeforces Round #659 (Div. 2) A. Common Prefixes

    题目链接:https://codeforces.com/contest/1384/problem/A 题意 构造 $n+1$ 个字符串,使得 $n$ 对相邻字符串的相同前缀长度对应于数组 $a$ . ...

  2. HDU - 2328 Corporate Identity(kmp+暴力)

    传送门:http://acm.hdu.edu.cn/showproblem.php?pid=2328 题意:多组输入,n==0结束.给出n个字符串,求最长公共子串,长度相等则求字典序最小. 题解:(居 ...

  3. P1541 乌龟棋(DP)

    题目背景 小明过生日的时候,爸爸送给他一副乌龟棋当作礼物. 题目描述 乌龟棋的棋盘是一行NNN个格子,每个格子上一个分数(非负整数).棋盘第1格是唯一的起点,第NNN格是终点,游戏要求玩家控制一个乌龟 ...

  4. .Net下的PDF打印

    简单研究了一下.Net下的PDF打印,一路发现了很多小坑. 第三方组件 这里使用的解析PDF的组件是mupdf,特点和C#调用在 这里 有介绍. 实现的功能 支持页面大小.边距.打印机选择.打印机dp ...

  5. 【POJ 1148】Utopia Divided

    Utopia Divided 题目链接:POJ 1148 题目大意 在一个坐标系中,一个点一开始在原点,然后被要求每次走到一个规定的象限内. 你有一些互不相同的数,每次你可以选每选过的两个,正负性可以 ...

  6. k8s二进制部署 - node节点安装

    创建kubelet配置 • set-cluster # 创建需要连接的集群信息,可以创建多个k8s集群信息 [root@hdss7-21 ~]# kubectl config set-cluster ...

  7. Ruby on Rails

    Ruby on Rails 是一个可以使你开发,部署,维护 web 应用程序变得简单的框架.在2004年7月,由Rails的创始人大卫·海纳梅尔·韩森从37signals公司的项目管理工具Baseca ...

  8. MySQL数据库系列(四)- InnoDB下的共享表空间和独立表空间详解

    一.概念 共享表空间: Innodb的所有数据保存在一个单独的表空间里面,而这个表空间可以由很多个文件组成,一个表可以跨多个文件存在,所以其大小限制不再是文件大小的限制,而是其自身的限制.从Innod ...

  9. c# 类(2)

    构造函数 和 析构函数 Constructors and destructors 构造函数是一个特殊的函数,当实例化一个类的时候自动调用这个函数,无返回值(不用定义返回类型)普通函数的定义 publi ...

  10. tfrecords转np.array

    import tensorflow as tf import numpy as np from keras.utils import to_categorical import sys def tfr ...