Python开发【第一篇】基础题目二
1 列表题
l1 = [11, 22, 33]
l2 = [22, 33, 44]
# a. 获取l1 中有,l2中没有的元素
for i in l1:
if i not in l2:
print(i) #
# b. 获取l2 中有,l1中没有的元素列表
for i in l2:
if i not in l1:
print(i) #
# c. 获取l1 和 l2 中内容相同的元素
for i in l1:
if i in l2:
print(i, end=" ") # 22 33 # d. 获取l1 和 l2中都互相没有的元素
for i in l2:
if i not in l1:
print(i, end=" ") #
for i in l1:
if i not in l2:
print(i, end=" ") #
2.有 1,2,3,4,5,6,7,8, 8位数字,输出两位元素互不相同的个数
count = 0
a = [1, 2, 3, 4, 5, 6, 7, 8]
b = [1, 2, 3, 4, 5, 6, 7, 8]
for i in a:
for j in b:
if i != j:
count += 1
print(count) # # 2_1.有 1,2,3,4,5,6,7,8, 8位数字,输出两位元素互不相同且数字不重复出现的个数
count = 0
a = [1, 2, 3, 4, 5, 6, 7, 8]
b = [1, 2, 3, 4, 5, 6, 7, 8]
for i in range(1, len(a) + 1):
for j in range(i + 1, len(b) + 1):
count += 1
print(count) #
3. 九九乘法表 正三角
for i in range(1,10):
for j in range(1,10):
if i>= j:
print("%s * %s = %s"%(j,i,i*j),end='\t')
print()
4 九九乘法表 倒三角
for i in range(1,10):
for j in range(1,10):
if j >= i:
print("%s * %s = %s"%(i,j,j*i),end="\t")
else:
print("%s"%" "*12,end="")
print()
5 用Python开发程序自动计算方案
# 公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱,用100文钱买100只鸡,其中公鸡,母鸡,小鸡都必须要有,问公鸡,母鸡,小鸡,小鸡要买多少只刚好凑够100文钱?
for i in range(1, 100 // 5):
for j in range(1, 100 // 3):
for z in range(1, 100):
if i + j + z == 100 and 5*i + 3*j + z/3.0 == 100:
print(i,j,z)
"""
4 18 78
8 11 81
12 4 84
"""
6 用下划线将列表的每一个元素拼接为字符串 ['tang','lao','er']
# 注意: 此方法只适用于元素都是str类型
li = ['tang','lao','er']
v = "_".join(li)
print(v) # tang_lao_er # 6_1 里面有数字的列表拼接为字符串
li = ['tang','lao','er',123]
v = "_".join("%s" %i for i in li)
print(v) # tang_lao_er_123 # 6_2 里面有多种数据类型的拼接为字符串
li = ['tang','lao','er',[11,22],True]
v = "_".join("%s" %i for i in li)
print(v) # tang_lao_er_[11, 22]_True
7 有一元组('tang','lao','er') 写代码,实现以下功能
tu = ('tang','lao','er',)
# a. 计算长度
print(len(tu))
# b. 获取元组的第2-3个元组,并输出
print(tu[1:3]) # ('lao', 'er')
# 注意: 切片索引超出分界大小 不会报错
print(tu[1:10]) # ('lao', 'er')
print(tu[10:]) # () # c. 请使用for输出元组的元素
for i in tu:
print(i,end=" ") # tang lao er
print()
# d. 请使用for、 len 、range输出元组的索引
for i in range(len(tu)):
print(i,end=" ") # 0 1 2
print() # f. 请使用enumrate输出元组元素和序号(序号从10开始)
for key, value in enumerate(tu,10):
print((key,value),end=" ") # (10, 'tang') (11, 'lao') (12, 'er')
8. 有如下变量,请实现要求的功能
tu = ("tang",[11,22,{"k1":"v1","k2":["age","name"],"k3":(11,22,33)},44])
# a.元组的特性
#元组不可变类型 不可增删改 #b. 第一个元素"tang", 是否可修改
# 否 # c "k2"对应的值是什么类型?是否可改,如果可以,请在其中增加一个元素"san"
# 列表类型 可改
tu[1][2]["k2"].append("san")
print(tu[1][2]["k2"]) # ['age', 'name', 'san'] # d "k2"对应的值是什么类型?是否可改,如果可以,请在其中增加一个元素"san"
# 元组类型 不可改
9. bool值为False的
记法 6+1
6=3+3:3括号 {} [] () 3个基本类型 整型=0、字符串=""、bool= False
1:None
10. 求一列表任意两个值相加等于9 的元素集合
nums = [2,7,11,25,1,8,7]
a = []
for i in nums:
for j in nums:
if i+j == 9:
a.append((i,j))
print(a) # [(2, 7), (2, 7), (7, 2), (1, 8), (8, 1), (7, 2)] # 10_1 求一列表任意两个值相加等于9 的索引元素集合
nums = [2,7,11,25,1,8,7]
a = []
for i in range(len(nums)):
for j in range(len(nums)):
if nums[i]+nums[j] == 9:
a.append((i,j))
print(a) # [(0, 1), (0, 6), (1, 0), (4, 5), (5, 4), (6, 0)]
11 列表反转
li = [11,22,33,44]
li.reverse()
print(li) # [44, 33, 22, 11]
12 分页显示内容
# a 通过for循环创建302条数据,数据类型不限,如:
user_list = [
{'name':'tang1','email':'tang@qq.com','pwd':'tangpwd1'}
]
for i in range(1,302):
temp = {'name':"tang"+str(i),'email':'tang@qq.com'+str(i),'pwd':'pwd'+str(i)}
user_list.append(temp)
# print(user_list) #b 提示用户输入页码,每页10行数据,根据用户输入的页码返回数据
while True:
s = input('请输入1,2..30页码:')
s = int(s)
start = (s-1) * 10
end = s * 10
result = user_list[start:end]
for item in result:
print(item)
13 三级菜单
db ={
"北京":{
"昌平":{"沙河":{}},
"海淀":{},
"朝阳":{},
},
"广州":{
"天河":{"天河城"},
"海珠":{"仑头村"},
}
}
path = []
while True:
temp = db
for item in path:
temp = temp[item] # temp 指向最后一个节点 path = ["北京", "昌平","沙河"]
print("当前节点的所有子节点:",list(temp.keys())) choice = input('1:添加节点 2:查看节点 (Q 退出 | B 返回上一级)\n >>>')
if choice == "":
name = input("请输入要插入的节点名称>>>")
if name in temp:
print("节点已经存在")
else:
temp[name] = {}
elif choice == "":
name = input("请输入要查看的节点名称>>>")
if name in temp:
path.append(name)
else:
print("不存在此节点名称")
elif choice.lower() == "b":
if path:
path.pop()
elif choice.lower() == 'q':
break
else:
print('输入错误,请重新输入:')
Python开发【第一篇】基础题目二的更多相关文章
- python开发第一篇:初识python
一. Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为AB ...
- [Python笔记]第一篇:基础知识
本篇主要内容有:什么是python.如何安装python.py解释器解释过程.字符集转换知识.传参.流程控制 初识Python 一.什么是Python Python是一种面向对象.解释型计算机程序设计 ...
- Python开发 第一篇 python的前世今生
Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC ...
- Python开发第一篇
Python 是什么? 首先他可能是比较好的一个编程开发语言!
- 《python开发技术详解》|百度网盘免费下载|Python开发入门篇
<python开发技术详解>|百度网盘免费下载|Python开发入门篇 提取码:2sby 内容简介 Python是目前最流行的动态脚本语言之一.本书共27章,由浅入深.全面系统地介绍了利 ...
- [译]PrestaShop开发者指南 第一篇 基础
# 第一篇 基础 PS(PrestaShop简称)一开始就设定了能够在它的基础上很简单的构建第三方模块的机制,让它成为一款具有极高定制性的电子商务软件. PS的可以在三个方面进行定制: * 主题 * ...
- 深入学习jQuery选择器系列第一篇——基础选择器和层级选择器
× 目录 [1]id选择器 [2]元素选择器 [3]类选择器[4]通配选择器[5]群组选择器[6]后代选择器[7]兄弟选择器 前面的话 选择器是jQuery的根基,在jQuery中,对事件处理.遍历D ...
- iOS开发——高级技术精选&底层开发之越狱开发第一篇
底层开发之越狱开发第一篇 做越狱开发也有一些时间了,有很多东西想总结一下,希望给他人一些借鉴,也是自己对过去开发经历的一些总结.个人不推荐使用盗版,这里主要以技术介绍为主. 这个系列里面主要介绍怎样进 ...
- Python人工智能第一篇:语音合成和语音识别
Python人工智能第一篇:语音合成和语音识别 此篇是人工智能应用的重点,只用现成的技术不做底层算法,也是让初级程序员快速进入人工智能行业的捷径.目前市面上主流的AI技术提供公司有很多,比如百度, ...
随机推荐
- .NET Core 2.x中使用Named Options处理多个强类型配置实例
来源: Using multiple instances of strongly-typed settings with named options in .NET Core 2.x 作者: Andr ...
- C# - 2017微软校园招聘笔试题 之 MS Recognition[待解决]
MS Recognition 在线提交: hihoCoder 1402 http://hihocoder.com/problemset/problem/1402 类似: OpenJudge - I:P ...
- 【Python3爬虫】网易云音乐爬虫
此次的目标是爬取网易云音乐上指定歌曲所有评论并生成词云 具体步骤: 一:实现JS加密 找到这个ajax接口没什么难度,问题在于传递的数据,是通过js加密得到的,因此需要查看js代码. 通过断掉调试可以 ...
- 【链表问题】打卡2:删除单链表的第 K个节点
前言 以专题的形式更新刷题贴,欢迎跟我一起学习刷题.每道题会提供简单的解答. 题目描述 在单链表中删除倒数第 K 个节点 要求 如果链表的长度为 N, 时间复杂度达到 O(N), 额外空间复杂度达到 ...
- Linux服务器时间相关命令记录
前言 以往安装服务器时间都是正常,但是最近服务器的时间经常出现问题,所以在安装配置完成服务器之后需要对服务器的时间进行测试,如果服务器时间异常,那么当程序去取系统时间的时候就会出现问题. 时间相关命令 ...
- leetcode — distinct-subsequences
import java.util.Arrays; /** * * Source : https://oj.leetcode.com/problems/distinct-subsequences/ * ...
- [六]JavaIO之 ByteArrayInputStream与ByteArrayOutputStream
功能简介 ByteArrayInputStream 和 ByteArrayOutputStream 提供了针对于字符数组 byte [] 的标准的IO操作方式 ByteArrayInp ...
- -1-3 java集合框架基础 java集合体系结构 Collection 常用java集合框架 如何选择集合 迭代器 泛型 通配符概念 Properties 集合 迭代器
集合又称之为容器存储对象的一种方式 •数组虽然也可以存储对象,但长度是固定的:显然需要可变长度的容器 集合和数组的区别? A:长度区别 ...
- Spring Boot 2.x(十四):整合Redis,看这一篇就够了
目录 Redis简介 Redis的部署 在Spring Boot中的使用 Redis缓存实战 寻找组织 程序员经典必备枕头书免费送 Redis简介 Redis 是一个开源的使用 ANSI C 语言编写 ...
- 记一次vue长列表的内存性能分析和优化
好久没写东西,博客又长草了,这段时间身心放松了好久,都没什么主题可以写了 上周接到一个需求,优化vue的一个长列表页面,忙活了很久也到尾声了,内存使用和卡顿都做了一点点优化,还算有点收获 写的有点啰嗦 ...