python基础知识练习题(二)
1、 有两个列表
l1 = [11, 22, 33]
l2 = [22, 33, 44]
a.获取内容相同的元素列表
li = []
l1 = [11, 22, 33]
l2 = [22, 33, 44]
for v1 in l1:
for v2 in l2:
if v1 == v2:
li.append(v1)
print(li)
b.获取l1中有,l2中没有的元素列表
li = []
l1 = [11, 22, 33]
l2 = [22, 33, 44]
for v1 in l1:
if v1 not in l2:
li.append(v1)
print(li)
c.获取l2中有,l1中没有的元素列表
li = []
l1 = [11, 22, 33]
l2 = [22, 33, 44]
for v2 in l2:
if v2 not in l1:
li.append(v2)
print(li)
d.获取l1和l2中内容都不同的元素
l1 = [11, 22, 33]
l2 = [22, 33, 44]
for v1 in l1:
if v1 not in l2:
print(v1)
for v2 in l2:
if v2 not in l1:
print(v2)
2、利用下划线将列表的每一个元素拼接成字符串,li = ['alex','eric','Witharush']
li = ['alex', 'eric', 'Witharush']
print('_'.join(li))
3、有以下列表:
nums = [2,7,11,15,1,8,7]
请找到列表中任意两个元素相加能够等于9的元素组合,如,[(0,1),(4,5)]
nums = [2, 7, 11, 15, 1, 8, 7]
li = []
for i in nums:
for v in nums:
if i + v == 9:
li.append((nums.index(i), nums.index(v)))
print(li)
4、写代码,有如下列表,按照要求实现每一个功能
li = ["Witharush", "eric", "rain"]
a.计算列表长度并输出
print(len(li))
# 结果3 列表长度是指一级元素个数
b.列表中追加元素"seven",并输出添加后的列表
li = ["Witharush", "eric", "rain"]
li.append('seven')
print(li)
c.请在列表的第一个位置插入元素"Tony",并输出添加后的列表
li = ["Witharush", "eric", "rain"]
li.insert('Tony')
print(li)
d.请修改列表的第2个位置插入元素"Kelly",并输出添加后的列表
li = ["Witharush", "eric", "rain"]
li.insert(1,'Kelly')
print(li)
e.请删除列表中的元素"eric",并输出修改后的列表
li = ["Witharush", "eric", "rain"]
li.remove('eric')
print(li)
f.请删除列表中的第2个元素,并输出删除的元素的值和删除元素后的列表
li = ["Witharush", "eric", "rain"]
print(li.pop(1))
print(li)
g.请删除列表中的第3个元素,并输出删除元素后的列表
li = ["Witharush", "eric", "rain"]
li.pop(2)
print(li)
h.请删除列表中的第2至4个元素,并输出删除元素后的列表
li = ["Witharush", "eric", "rain"]
del li[1:3]
print(li)
i.请将列表所有的元素反转,并输出反转后的列表
li = ["Witharush", "eric", "rain"]
li.reverse()
print(li)
j.请使用for,len,range输出列表的索引
li = ["Witharush", "eric", "rain"]
for i in range(len(li)):
print(i, li[i])
k.请使用enumrate输出列表元素和序号(序号从100开始)
li = ["Witharush", "eric", "rain"]
for i, v in enumerate(li, 100):
print(i, v)
l.请使用for循环输出列表的所有元素
li = ["Witharush", "eric", "rain"]
for i in li:
print(i)
5、写代码,有如下元祖,按照要求实现每一个功能
tu = ('alex', 'eric', 'Witharush')
a.计算元祖长度并输出
tu = ('alex', 'eric', 'Witharush')
print(len(tu))
b.获取元祖的第二个元素,并输出
tu = ('alex', 'eric', 'Witharush')
print(tu[1])
c.获取元祖的第 1-2 个元素,并输出
tu = ('alex', 'eric', 'Witharush')
print(tu[0:1])
d.请使用for输出元祖的元素
tu = ('alex', 'eric', 'Witharush')
for i in tu:
print(i)
e.请使用for,len,range输出元素的索引
tu = ('alex', 'eric', 'Witharush')
for i in range(0, len(tu)):
print(i, tu[i])
f.请使用enumrate输出元祖元素和序号(序号从10开始)
tu = ('alex', 'eric', 'Witharush')
for i, v in tu.enumerate(tu, 10):
print(i, v)
6、有如下变量,请实现要求的功能
tu = ("Witharush",[11,22,{"k1":'v1',"k2":["age","name"],"k3":(11,22,33)},44])
a.讲述元祖的特性
一级元素不可被修改、被增加或者删除
b.请问tu变量中的第一个元素"Witharush"是否可以被修改?
不能
c.请问tu变量中的"k2"对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素"Seven"
列表,可以被修改
tu = ("Witharush", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3":(11, 22, 33)}, 44])
tu[1][2]["k2"].append("Seven")
print(tu)
d.请问tu变量中的"k3"对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素"Seven"
元组,作为k3的vaule可以被整体替换为(11, 22, 33, "Seven"),不能直接在元组(11, 22, 33)中增加元素"Seven"
tu = ("Witharush", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3":(11, 22, 33)}, 44])
tu[1][2]["k3"] = (11, 22, 33, "Seven")
print(tu)
7、用1,2,3,4,5,6,7,8 能组成多少个互不相同且无重复的两位数?
n = 0
for i in range(1, 9):
for v in range(1, 9):
if i != v:
n += 1
print(n)
8、九九乘法表
for i in range(1, 10):
for v in range(1, i+1):
print(str(i) + '*' + str(v) + '=' + str(i*v), end="\t")
print("\n", end="")
'''
结果:
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
自己总结:先确定外循环的一个i值,遍历内循环v值;然后再循环下一个i值,再遍历内循环v值;直到遍历i值。
'''
9、print用法中的“sep” 、"end"
两个都是print的参数,step默认值是空格,end默认是换行符\n
10、分页实现内容
a.通过for循环创建301条数据,数据类型不限,如:
Witharush-1 Witharush1@live.com pwd1
Witharush-2 Witharush2@live.com pwd2
Witharush-3 Witharush3@live.com pwd3
...
user_list = []
for i in range(, ):
temp = {'姓名': 'Gru' + str(i), '邮箱': 'Gru' + str(i) + '@163.com ', '电话': '' + str(i)}
user_list.append(temp)
print(user_list)
b.提示用户 请输入要查看的页码,当用户输出指定页码,也显示指定数据
注意:
每页显示10条数据
用户输出页码是非十进制数字,也提示输入内容格式错误
user_list = []
for i in range(, ):
temp = {'姓名': 'Gru' + str(i), '邮箱': 'Gru' + str(i) + '@163.com ', '电话': '' + str(i)}
user_list.append(temp)
print(user_list)
while True:
s = input('请输入页码:')
s = int(s)
if s not in range(, //10):
print('输入格式错误!')
continue
n = user_list[(s-)*: s*]
for m in n:
print(m)
11、用python开发程序自动计算方案
公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱,用100文钱买100只鸡,其
中公鸡,母鸡,小鸡都必须要有,问公鸡,母鸡,小鸡要买多少只刚好凑足100文钱?
for g in range(, //5):
for m in range(, //3):
for x in range(, ):
if g* + m* + x*/ == and g + m + x == :
print(g, m, x)
python基础知识练习题(二)的更多相关文章
- python基础知识(二)
以下内容,作为python基础知识的补充,主要涉及基础数据类型的创建及特性,以及新数据类型Bytes类型的引入介绍
- Python 基础知识(二)
一.基础数据类型 1.数字int 数字主要是用于计算用的,使用方法并不是很多,就记住一种就可以: #bit_length() 当十进制用二进制表示时,最少使用的位数 # -*- coding:UTF- ...
- python基础知识练习题(一)
1.执行Python脚本的两种方式:WIN+R,cmd,命令行窗口输入:python 进入python模式输入命令行直接执行命令:编写以.py结尾的文件,写入命令行,然后运行python.exe打开 ...
- python基础知识练习题一
1.执行Python脚本的两种方式 1.在计算机终端(运行cmd),输入安装的Python路径,然后输入Python脚本的路径,回车. 2.直接运行python 2.简述位.字节的关系. 1字节 = ...
- python基础知识(二)
python基础知识(二) 字符串格式化 格式: % 类型 ---- > ' %类型 ' %(数据) %s 字符串 print(' %s is boy'%('tom')) ----> ...
- Python开发【第二篇】:Python基础知识
Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...
- python 基础知识(一)
python 基础知识(一) 一.python发展介绍 Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本 ...
- python 爬虫与数据可视化--python基础知识
摘要:偶然机会接触到python语音,感觉语法简单.功能强大,刚好朋友分享了一个网课<python 爬虫与数据可视化>,于是在工作与闲暇时间学习起来,并做如下课程笔记整理,整体大概分为4个 ...
- Python基础知识(五)
# -*- coding: utf-8 -*-# @Time : 2018-12-25 19:31# @Author : 三斤春药# @Email : zhou_wanchun@qq.com# @Fi ...
随机推荐
- 使Python走向Effective系列目录
Effective以一词,并不单单局限于执行速度层面的高效率,同时有着令代码易于阅读.易于测试且易于维护等意思,此外,它还蕴藏着易于扩展.易于修改和易于多人协作等更为高阶的理念.如果能够通过一些具体的 ...
- volatile&synchronized&diff
1. 三大性质简介 在并发编程中分析线程安全的问题时往往需要切入点,那就是两大核心:JMM抽象内存模型以及happens-before规则(在这篇文章中已经经过了),三条性质:原子性,有序性和可见性. ...
- JDK常用命令行工具(基于JDK10)
虽然我是在jdk10环境下, 但是大体上和jdk8是差不多的. 总共有这么多 本来想着一口气把所有命令都边学边总结一下的, 结果发现....有些还真的不是很常用....或者说我这个水平还接触不到那么多 ...
- ACM-ICPC 2018 沈阳赛区网络预赛 F Fantastic Graph(贪心或有源汇上下界网络流)
https://nanti.jisuanke.com/t/31447 题意 一个二分图,左边N个点,右边M个点,中间K条边,问你是否可以删掉边使得所有点的度数在[L,R]之间 分析 最大流不太会.. ...
- 开源顶级持久层框架——mybatis(ibatis)——day01
mybatis-day01 1.对原生态jdbc程序中的问题总结 1.1环境 java环境:jdk eclipse:indigo ...
- SQL数字型注入代码审计
数字型注入 SQL注入攻击,简称注入攻击,是发生于应用程序与数据库层的安全漏洞. 简而言之,是在输入的字符串之中注入sql指定,在设计不良的程序当中忽略了检查,那么这些注入进去的指令就会被数据库服务器 ...
- sql server 删除所有表和递归查询、数字类型转为字符串
1.删除所有表 select 'drop table '+name+';' from sys.tables where name like 'DataSyncV1DelaySample%' or na ...
- 文件的暂存(git add)
如果我们更改了之前已经被跟踪的main.c,然后执行git status $ git status On branch master Changes not staged for commit: (u ...
- “Excel-建议不可用于您所选择的数据”错误提示
Excel作为一项的数据图表绘制软件,在工作中经常用到.“建议不可用于您所选择的数据这一错误提示,我也遇到了几次了,但是每次遇到总是忘了上次是什么原因.这次,写下博客记录.一般都是在复制网页或者其他数 ...
- mvc路由报错
1.添加新项目时,把就项目的dll一起拷贝过来.生成项目,编译通过,打开页面时报错:“找到多个与名为“Home”的控制器匹配的类型 ”,网上的解决方案是,加命名空间,解决,但是自己这边删掉bin中原来 ...