python《信息安全专业导论》期末考试内容(四)

1.辗转相除法(又称欧几里得算法)就是一个机械地求解最大公约数问题的算法。在辗转相除法中分为使用除法运算和使用减法运算两种方法。
使用减法运算简单易懂,步骤如附件中图所示。用两个数中较大的数减去较小的数(步骤),反复进行上述步骤,直到两个数的值相等(步骤的终止)。
如果最终这两个数相同,那么这个数就是最大公约数 用python完成使用减法的辗转相除法,提交代码和运行结果截图,截图中至少求三组整数的最大公约数。 数据输入不要使用input函数,使用命令行。比如 python gcd.py 42 12 会打印6

2.编写一个python 程序,命名为 "swap你的8位学号.py",比如 学号为20211200的同学命名 为“swap20211200.py”
完成如下功能: 交换命令行传入的字符串参数。

比如在命令行中执行 python swap20211200.py abc def
会打印:def abc
不要使用input函数
 
 1 import sys
 2 n1 = int(sys.argv[1])
 3 n2 = int(sys.argv[2])
 4 m = max(n1, n2)
 5 n = min(n1, n2)
 6 r = m % n
 7 while r != 0:
 8     m = n
 9     n = r
10     r = m % n
11 print(n)

 

1 import sys
2 a = sys.argv[1]
3 b = sys.argv[2]
4 print(b, " ", a)

 

 

命令行运行Python脚本时传入参数的方式

sys.argv:以列表的方式获取运行 Python 程序的命令行参数存放其中。其中 sys.argv[0] 通常就是指该 Python程序本身,sys.argv[1] 代表第一个参数,sys.argv[2] 代表第二个参数,以此类推。类似于 Shell 中的 $0、$1、$2

import sys
print('程序名称为:{},第一个参数为:{},第二个参数为:{}'.format(sys.argv[0], sys.argv[1], sys.argv[2]))

sys.byteorder:显示本地字节序的指示符。如果本地字节序的大端模式,则该属性返回big,否则返回little

sys.copyright:该属性返回与 Python 解释器有关的版权信息

sys.executable:该属性返回 Python 解释器在磁盘上的存储路径

sys.exit():通过引发SystemExit异常来退出程序,将其放在try块中不能阻止finally块的执行。

sys.flags:该只读属性返回运行Python命令时指定的旗标

sys.getfilesystemencodiing():返回在当前系统中保存文件所用的字符集

sys.getrefcount():返回指定对象的引用计数。

sys.getrecursionlimit():返回Python解释器当前支持的递归深度。该属性可通过setrecursionlimit()方法重新设置

sys.getswitchinterval():返回在当前Python解释器中线程切换的时间间隔。该属性可通过setswitchinterval()函数改变

sys.implementation:返回当前Python解释器的实现

sys.maxsize:返回Python整数支持的最大值。在32位平台上,该属性值为 2 ×× 31-1;在64位平台上,该属性值为 2 ×× 63-1

sys.path:该属性指定Python查找模块的路径列表。程序可通过修改该属性来动态增加Python加载模块的路径

sys.platfrom:返回Python解释器所在的平台的标识符

sys.stdin:返回系统的标准输入流——一个类文件对象

sys.stdout:返回系统的标准输出流——一个类文件对象

sys.stderr:返回系统的错误输出流——一个类文件对象

sys.version:返回当前Python解释器的版本信息

sys.winver:返回当前Python解释器的主版本号

sys.copyright:返回当前Python解释器的版权信息

 

posted @ 2021-01-04 20:56  油菜园12号  阅读(200)  评论(0编辑  收藏  举报