基础练习-6

简介: 基础练习-6

基础练习-6


1. 809*??=800*??+9*?? 其中??代表的两位数, 809*??为四位数,8*??的结果为两位数,9*??的结果为3位数。求??代表的两位数,及809*??后的结果。


程序分析:无。
a = 809
for i in range(10,100):
    b = i * a
    if b >= 1000 and b <= 10000 and 8 * i < 100 and 9 * i >= 100:
        print( b,' = 800 * ', i, ' + 9 * ', i)
# 以上实例输出结果为:
# 9708  = 800 *  12  + 9 *  12


2. 八进制转换为十进制


程序分析:无。
if __name__ == '__main__':
    n = 0
    p = input('input a octal number:\n')
    for i in range(len(p)):
        n = n * 8 + ord(p[i]) - ord('0')
    print( n)
# 以上实例输出结果为:
# input a octal number:
# 122
# 82
#2
def f8to10(num):
    print(("8进制数:", num))
    l = str(num)
    length = len(l)
    sum = 0
    for i in range(length):
        sum += 8 ** i * int(l[length-1-i])
    print(("转成10进制数为:",sum))
f8to10(122)
#3
if __name__ == '__main__':
    n = s =  0
    L = []
    n = input("请输入一个八进制数: \n")
    for i in range(len(n)):
        L.append(n[i])
    L.reverse()
    for i in range(len(n)):
        s = s + int(L[i])*(8**i)
    print( s)
#4
def batoshi(num):
    count=0
    j=len(num)-1
    for each_ch in num:
        count+=pow(8,j)*int(each_ch)
        j-=1
    return count
print(batoshi('122'))
#5
n=input('请输入一个八进制数:')
#使用列表推导式来写
lost=sum([int(n[-i])*8**(i-1) for i in range(1,len(n)+1)])
print( '转换十进制数为:%s'%lost)
#6
n = reversed('122')
s = 0
for idx,i in enumerate(n):
    s += int(i) * pow(8, idx)
print(s)


3. 求0—7所能组成的奇数个数。


程序分析:
组成1位数是4个。
组成2位数是7*4个。
组成3位数是7*8*4个。
组成4位数是7*8*8*4个。
......
if __name__ == '__main__':
    sum = 4
    s = 4
    for j in range(2,9):
        print( sum)
        if j <= 2:
            s *= 7
        else:
            s *= 8
        sum += s
    print( 'sum = %d' % sum)
# 以上实例输出结果为:
'''
4
32
256
2048
16384
131072
1048576
sum = 8388608
'''


4. 连接字符串。


程序分析:无。
delimiter = ','
mylist = ['Brazil', 'Russia', 'India', 'China']
print( delimiter.join(mylist))
#以上实例输出结果为:
# Brazil,Russia,India,China


5. 输入一个奇数,然后判断最少几个 9 除于该数的结果为整数。


程序分析:999999 / 13 = 76923。
if __name__ == '__main__':
    zi = int(input('输入一个数字:\n'))
    n1 = 1
    c9 = 1
    m9 = 9
    sum = 9
    while n1 != 0:
        if sum % zi == 0:
            n1 = 0
        else:
            m9 *= 10
            sum += m9
            c9 += 1
    print( '%d 个 9 可以被 %d 整除 : %d' % (c9,zi,sum))
    r = sum / zi
    print( '%d / %d = %d' % (sum,zi,r))
#以上实例输出结果为:
'''
输入一个数字:
13
6 个 9 可以被 13 整除 : 999999
999999 / 13 = 76923
'''


6. 两个字符串连接程序。


程序分析:无。
if __name__ == '__main__':
    a = "acegikm"
    b = "bdfhjlnpq"
    # 连接字符串
    c = a + b
    print( c)
# 以上实例输出结果为:
# acegikmbdfhjlnpq


7. 回答结果(结构体变量传递)。


程序分析:无。
if __name__ == '__main__':
    class student:
        x = 0
        c = 0
    def f(stu):
        stu.x = 20
        stu.c = 'c'
    a= student()
    a.x = 3
    a.c = 'a'
    f(a)
    print( a.x,a.c)
# 以上实例输出结果为:
# 20 c
:无。


8. 读取7个数(1—50)的整数值,每读取一个值,程序打印出该值个数的*。


程序分析:无。
if __name__ == '__main__':
    n = 1
    while n <= 7:
        a = int(input('input a number:\n'))
        while a < 1 or a > 50:
            a = int(input('input a number:\n'))
        print( a * '*')
        n += 1
# 以上实例输出结果为:
'''
input a number:
9
*********
input a number:
5
*****
input a number:
6
******
input a number:
'''


9. 某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。


程序分析:无。
from sys import stdout
if __name__ == '__main__':
    a = int(input('输入四个数字:\n'))
    aa = []
    aa.append(a % 10)
    aa.append(a % 100 / 10)
    aa.append(a % 1000 / 100)
    aa.append(a / 1000)
    for i in range(4):
        aa[i] += 5
        aa[i] %= 10
    for i in range(2):
        aa[i],aa[3 - i] = aa[3 - i],aa[i]
    for i in range(3,-1,-1):
        stdout.write(str(aa[i]))
#以上实例输出结果为:
'''
输入四个数字:
1234
9876
'''


10. 列表使用实例。


程序分析:无。
#list  
#新建列表  
testList=[10086,'中国移动',[1,2,4,5]]  
#访问列表长度  
print( len(testList)  )
#到列表结尾  
print( testList[1:]  )
#向列表添加元素  
testList.append('i\'m new here!')  
print( len(testList)  )
print( testList[-1]  )
#弹出列表的最后一个元素  
print( testList.pop(1)  )
print( len(testList)  )
print( testList  )
#list comprehension  
#后面有介绍,暂时掠过  
matrix = [[1, 2, 3],  
[4, 5, 6],  
[7, 8, 9]]  
print( matrix  )
print( matrix[1]  )
col2 = [row[1] for row in matrix]#get a  column from a matrix  
print( col2  )
col2even = [row[1] for row in matrix if  row[1] % 2 == 0]#filter odd item  
print( col2even)
# 以上实例输出结果为:
'''
3
['\xe4\xb8\xad\xe5\x9b\xbd\xe7\xa7\xbb\xe5\x8a\xa8', [1, 2, 4, 5]]
4
i'm new here!
中国移动
3
[10086, [1, 2, 4, 5], "i'm new here!"]
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
[4, 5, 6]
[2, 5, 8]
[2, 8]
'''


11. 时间函数举例1。


程序分析:无。
if __name__ == '__main__':
    import time
    print( time.ctime(time.time()))
    print( time.asctime(time.localtime(time.time())))
    print( time.asctime(time.gmtime(time.time())))
# 以上实例输出结果为:
'''
Wed Oct 21 17:08:51 2015
Wed Oct 21 17:08:51 2015
Wed Oct 21 09:08:51 2015
'''


12. 时间函数举例2。


程序分析:无。
if __name__ == '__main__':
    import time
    start = time.time()
    for i in range(3000):
        print( i)
    end = time.time()
    print( end - start)
# 以上实例输出结果为:
'''
0
1
2
3
4
……
'''


13. 时间函数举例3。


程序分析:无。
if __name__ == '__main__':
    import time
    start = time.clock()
    for i in range(10000):
        print( i)
    end = time.clock()
    print( 'different is %6.3f' % (end - start))
# 以上实例输出结果为:
'''
0
1
2
3
4
……
different is  0.014
'''


14. 时间函数举例4,一个猜数游戏,判断一个人反应快慢。


程序分析:无。
if __name__ == '__main__':
    import time
    import random
    play_it = input('do you want to play it.(\'y\' or \'n\')')
    while play_it == 'y':
        c = input('input a character:\n')
        i = random.randint(0,2**32) % 100
        print( 'please input number you guess:\n')
        start = time.clock()
        a = time.time()
        guess = int(input('input your guess:\n'))
        while guess != i:
            if guess > i:
                print( 'please input a little smaller')
                guess = int(input('input your guess:\n'))
            else:
                print( 'please input a little bigger')
                guess = int(input('input your guess:\n'))
        end = time.clock()
        b = time.time()
        var = (end - start) / 18.2
        print( var)
        # print( 'It took you %6.3 seconds' % time.difftime(b,a)))
        if var < 15:
            print( 'you are very clever!')
        elif var < 25:
            print( 'you are normal!')
        else:
            print( 'you are stupid!')
        print( 'Congradulations')
        print( 'The number you guess is %d' % i)
        play_it = input('do you want to play it.')
# 以上实例输出结果为:
'''
do you want to play it.('y' or 'n')y
input a character:
5
please input number you guess:
input your guess:
60
……
please input a little bigger
input your guess:
29
please input a little smaller
input your guess:
28
3.81868131868e-05
you are very clever!
Congradulations
The number you guess is 28
do you want to play it.
'''


15. 字符串日期转换为易读的日期格式。


程序分析:无。
from dateutil import parser
dt = parser.parse("Aug 28 2015 12:00AM")
print( dt)
#以上实例输出结果为:
# 2020-08-28 00:00:00


16. 计算字符串中子串出现的次数。


程序分析:无。
if __name__ == '__main__':
    str1 = input('请输入一个字符串:\n')
    str2 = input('请输入一个子字符串:\n')
    ncount = str1.count(str2)
    print( ncount)
# 以上实例输出结果为:
'''
请输入一个字符串:
www.baidu.com
请输入一个子字符串:
baidu
1
'''


17. 从键盘输入一些字符,逐个把它们写到磁盘文件上,直到输入一个 # 为止。


程序分析:无。
if __name__ == '__main__':
    from sys import stdout
    filename = input('输入文件名:\n')
    fp = open(filename,"w")
    ch = input('输入字符串:\n')
    while ch != '#':
        fp.write(ch)
        stdout.write(ch)
        ch = input('')
    fp.close()
# 以上实例输出结果为:
'''
输入文件名:
baidufile.txt
输入字符串:
baidu   
baidu
google
google#
实例中创建了 baidufile.txt 文件并向其写入 baidu 和 google 两个字符串,查看 baidufile.txt 文件内容:
$ cat baidufile.txt 
baidugoogle
'''


18. 从键盘输入一个字符串,将小写字母全部转换成大写字母,然后输出到一个磁盘文件"test"中保存。


程序分析:无。
if __name__ == '__main__':
    fp = open('test.txt','w')
    string = input('please input a string:\n')
    string = string.upper()
    fp.write(string)
    fp = open('test.txt','r')
    print( fp.read())
    fp.close()
# 以上实例输出结果为:
'''
please input a string:
baidu.com
BAIDU.COM
'''


19. 有两个磁盘文件A和B,各存放一行字母,要求把这两个文件中的信息合并(按字母顺序排列), 输出到一个新文件C中。


程序分析:无。
if __name__ == '__main__':
    import string
    fp = open('test1.txt')
    a = fp.read()
    fp.close()
    fp = open('test2.txt')
    b = fp.read()
    fp.close()
    fp = open('test3.txt','w')
    l = list(a + b)
    l.sort()
    s = ''
    s = s.join(l)
    fp.write(s)
    fp.close()
# 运行以上程序前,你需要在脚本执行的目录下创建 test1.txt、test2.txt 文件。
# 以上程序执行成功后,打开 test3.txt 文件可以看到内容如下所示:
# 123456


20. 列表转换为字典。


程序分析:无。
i = ['a', 'b']
l = [1, 2]
print( dict([i,l]))
# 以上实例输出结果为:
# {'a': 'b', 1: 2}
目录
相关文章
|
小程序 UED 开发者
小程序如何监听页面的滚动事件
小程序如何监听页面的滚动事件
1117 0
|
缓存 运维 监控
Dubbo服务降级:保障稳定性的终极指南【六】
Dubbo服务降级:保障稳定性的终极指南【六】
498 0
|
存储 小程序
微信小程序使用本地存储方法wx.setStorageSync()和wx.getStorageSync()
微信小程序使用本地存储方法wx.setStorageSync()和wx.getStorageSync()
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
智能自动化全方位解读:定义、技术、市场、应用,一文解答所有
智能自动化融合AI与RPA技术,重塑企业效率。它可处理非结构化数据、跨系统协同、自主决策,广泛应用于财务、人力、制造等领域,助力降本增效、合规创新。2025年全球市场规模将达4200亿美元,中国超9500亿元,成为最大单一市场。实在Agent等标杆产品实现“一句话完成工作”,5000+企业已落地应用,部署快、回报高、无需改造系统,正推动人机协同的数字革命。
813 154
|
4月前
|
人工智能 网络安全 新制造
孟庆涛:AI 为什么会 “说谎”?GEO 给出了终极答案
生成式AI时代,“幻觉危机”正威胁品牌真实——Gartner指出品牌信息错误率高达37%。辽宁粤穗孟庆涛首创“生成式引擎优化(GEO)”,以权威信源布局、可溯源数据嵌入、交叉验证结构、虚假信息对冲四大技术,让品牌成为AI信赖的“高优先级食材”,筑牢信任护城河。(239字)
305 0
|
8月前
|
人工智能 PHP Android开发
PHP 现在可以零成本构建原生 iOS 和 Android 应用 NativePHP for Mobile v3 发布
NativePHP for Mobile v3(即NativePHP Air)正式发布!核心框架MIT协议免费开源,Laravel开发者可零成本构建原生iOS/Android应用。全新插件化架构,按需加载功能;内置Jump真机即时调试、Mimi AI辅助编码,PHP≥8.3即可快速上手。(239字)
962 1
PHP 现在可以零成本构建原生 iOS 和 Android 应用 NativePHP for Mobile v3 发布
|
JSON 数据挖掘 API
唯品会电商 API 接口,特卖数据精准分析秘籍
在竞争激烈的电商市场中,唯品会凭借“品牌折扣”模式脱颖而出。本文详解如何利用唯品会API接口实现特卖数据精准分析,涵盖API获取与使用、关键指标、实战分析方法及案例,帮助商家提升销售业绩,优化运营决策,把握市场先机。
|
10月前
|
存储 弹性计算 人工智能
阿里云服务器最新租用费用深度解析:轻量、ECS与GPU全价位测评
阿里云服务器租用费用多少钱1年?最新阿里云服务器租用费用优惠价格表,轻量2核2G轻量服务器一年68元,折合5.6元1个月,新老用户同享99元一年服务器,2核4G5M服务器ECS优惠价199元一年(企业专享),2核4G4M轻量服务器298元一年,4核8G服务器955元一年,4核16G10M服务器70元1个月、210元3个月,8核32G服务器160元1个月、480元3个月。本文深度解析阿里云轻量、ECS与GPU价格。阿里云云服务器配置可以选择2核2G3M、2核4G5M带宽、2核8G、4核8G、4核16G、8核16G、8核32G等配置可选。
|
12月前
|
开发框架 前端开发 .NET
最新ASP.NET Core Blazor简介和快速入门一(基础篇)
大家好,我是码农刚子。本篇文章介绍了ASP.NET Core Blazor的简介和基础语法。Blazor是微软推出的基于.NET的Web框架,支持C#构建交互式前端,无需JavaScript。提供Server、WebAssembly和Hybrid三种托管模式,分别适用于实时通信、离线运行与跨平台原生应用开发,实现全栈C#开发体验。
688 1
最新ASP.NET Core Blazor简介和快速入门一(基础篇)
|
人工智能 测试技术 API
2025 API 开发工具深度分析:Apifox 与 Apipost
2025年,AI功能对于API开发工具选择至关重要。本文深入对比国产主流工具Apifox与Apipost,从AI能力、协议支持、Mock服务、文档管理、团队协作等方面全面分析。Apipost在AI智能化、WebSocket支持、智能Mock生成及团队协作上优势明显,适合中大型团队与复杂业务场景;Apifox则适合轻量级调试需求的个人或小型项目。根据实际需求选型,助你提升开发效率。
564 6

热门文章

最新文章