189 8069 5689

python练习题有哪些

这篇文章主要介绍“python练习题有哪些”,在日常操作中,相信很多人在python练习题有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”python练习题有哪些”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

创新互联公司-专业网站定制、快速模板网站建设、高性价比噶尔网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式噶尔网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖噶尔地区。费用合理售后完善,10余年实体公司更值得信赖。

1. 基础知识点补充

        join() 把一个列表转换成字符串;

        split() 切割. 把字符串变成列表。

    删除问题.

        list和dict

        list删除在循环的时候不能直接删除的;

        dict在循环的时候不要改变大小.;

        需要把要删除的内容保存在一个列表中. 循环这个列表删除老列表。

        fromkeys(a, b) 把a中的每一个元素获取到和b组装成一个新字典返回。

2. set集合: 不重复, 无序, 内容必须可哈希(不可变)。

3. 深浅拷贝

        1. 赋值: 没有创建新对象. 两个变量指向同一个对象;

        2. 浅拷贝: 拷贝第一层内容. 创建了新对象 [:] copy();

        3. 深拷贝: 拷贝所有和当前对象相关联的内. deepcopy()。


练习题

1.判断一个数是否是水仙花数,水仙花数是一个三位数,三位数的每一位的三次方的和还等于这数.那这个数就是一个水仙花数,例如:153=1*3+5**3+3**3

方法一:

#方法一
while 1:
   a = int(input("输入数字"))
   if len(str(a)) == 3:
       if (a // 100)** 3 + (a % 100 // 10) ** 3 + (a % 10) ** 3 == a :
           print("%d是水仙花数"%a)
       else:
           print("不是水仙花数")
   else:
       print("请重新输入一个三位数")
       continue

方法二

str = input("请输入数字")
s = 0
for c in str:
   s += int(c)**3
if s == int(str):
   print("是水仙花数")
else:
   print("不是水仙花数")

2.完成彩票36选7的功能.从1到36数中随机的产生7个数、最终获取到7个不重复的数据作为最终的开奖结果

随机数:

from random import 

randint randint(0,20)#0-20的随机数

#生成无重复的随机数
from random import randint
b = set()
while len(b) < 7:
   a = randint(1, 36)
   b.add(a)
print(b)

3.给出一个纯数字列表.请对列表进行排序(升级题)…

思路:

  1. 完成a和b的数据交换。例如,a=10,b=24交换之后,a=24,b=10循环列表。判断a]和ali+1]之间的大小关系,如果al比ali+1]大.则进行互换。

  2. 循环结束的时候.当前列表中最大的数据就会被移动到最右端.

  3. 想一想,如果再次执行一次上面的操作。最终第二大的数据就移动到了右端.以此类推.如果反复的进行执行相应的操作,那这个列表就变成了一个有序列表!

方法一:冒泡排序法

ls = [1,2,34,14,43,32,3,2,3,42,424,24,41,4]
count = 0
while count < len(ls):
   i = 0
   while  i < len(ls) -1-count: #优化了,减少不必要的循环
       if ls[i] > ls[i+1]:
           ls[i],ls[i+1] = ls[i+1],ls[i]
       i += 1
   count += 1
print(ls)

方法二

s = set()
while 1:
   a = input("输入数字")
   if a == 'q':
       break
   else:
       s.add(int(a))
lst = list(s)#创建无重复列表
print(lst)
for i in range(len(lst)-1):
   for j in range(i+1,len(lst)):
       if lst[i] > lst[j]:
           lst[i],lst[j] = lst[j],lst[i]
print(lst)

到此,关于“python练习题有哪些”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!


文章标题:python练习题有哪些
网页URL:http://cdxtjz.cn/article/gjeoij.html

其他资讯