python学习之那些你不在乎却操作非主流的练习题(一)
1.写代码,有如下列表,按照要求实现每⼀个功能
lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
(1)将列表lis中的"tt"变成大写(用两种方式)。
(2)将列表中的数字3变成字符串"100"(用两种方式)。
lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
#将列表lis中的"tt"变成大写(用两种方式)。
#方法一:利用函数
lis[3][2][1][0] = lis[3][2][1][0].upper()
print(lis)
#方法二:直接修改
lis[3][2][1][0] = 'TT'
print(lis)
# 方法三:替换
lis[3][2][1][0] = lis[3][2][1][0].replace('t','T')
print(lis)
#方法四:大小写转换
lis[3][2][1][0] = lis[3][2][1][0].swapcase()
print(lis)
#将列表中的数字3变成字符串"100"(用两种方式)
#方法一:
lis[1] = '100'
lis[3][2][1][1] = '100'
print(lis)
#方法二:
lis[1] = str(lis[1]).replace('3','100')
lis[3][2][1][1]= str(lis[3][2][1][1]).replace('3','100')
print(lis)
#方法三:相加(骚气)
lis[3][2][1][1] = str(lis[3][2][1][1]+97)
print(lis)
##将列表中的字符串'1'变成数字101(用两种方式)
#方法一:替换
lis[3][2][1][2]= int((lis[3][2][1][2]).replace('1','101'))
print(lis)
#方法二:数字相加
lis[3][2][1][2] = int(lis[3][2][1][2]) + 100
print(lis)
#方法三:字符相加
lis[3][2][1][2] = int(lis[3][2][1][2]+'01')
print(lis)
输⼊⼀个字符串,要求判断在这个字符串中⼤写字⺟,⼩写字⺟,数字,其他共出现了多少次,并输出来
contents = input("请输入;")
up = 0
low = 0
num = 0
oth = 0
for i in contents :
if i.lower() != i : #条件可以用 i.isupper()代替
up += 1
elif i.upper() != i : #件可以用 i.islower()代替
low += 1
elif i.isnumeric() == True :
num += 1
else:
oth += 1
print(f"大写字母有{up}个,小写字母有{low}个,数字有{num}个,其他字符有{oth}个")
3,写代码实现
v1 = {"alex","wusir","taibai"}
v2 = []
循环让用户输入,如果用户输入的内容在v1中存在,就添加到v2中,如果v1中不存在就添加的v1中,用户输入Q退出程序
解析:这道题我本没有用 in 来进行判断,而是直接add给v1,然后判断v1的长度有没有变化。
v1 = {"德玛","皇子","赵信"}
v2 = []
while 1 :
l = len(v1)
s = input('请输入,按q退出:')
v1.add(s)
if s.upper() == 'Q':
print('程序退出!')
break
elif len(v1) == l :
v2.append(s)
print('v1中已存在,添加到v2中')
print(v1)
print(v2)
4.⻋牌区域划分, 现给出以下⻋牌. 根据⻋牌的信息, 分析出各省的⻋牌持有量。
cars = ['鲁A32444','鲁B12333','京B8989M','⿊C49678','⿊C46555','沪 B25041'.....],
locals = {'沪':'上海', '⿊':'⿊⻰江', '鲁':'⼭东', '鄂':'湖北', '湘':'湖南'.....}
结果: {'⿊⻰江':2, '⼭东': 2, '北京': 1,'上海':1}
#方法一;
cars = ['鲁A32444','鲁B12333','京B8989M','黑C46555','沪B25041','湘A32134']
locals = {'沪':'上海','黑':'黑龙江','鲁':'山东','湘':'湖南','京':'北京'}
inf = {} #定义一个字典,用来存放"完整的地区名:数量"键值对
for i in cars :
if inf.get(locals[i[0]]) == None : #首先利用.get()返回值的特性判断inf里有没有存在获得的KEY,如果不存在返回None,进行键值对的添加,value为1
inf[locals[i[0]]] = 1
else: #获得的KEY已经存在的情况下,value的值自加1即可
inf[locals[i[0]]] += 1
print(inf )
#方法二:脑路清奇版
cars = ['鲁A32444','鲁B12333','京B8989M','黑C46555','沪B25041','湘A32134']
locals = {'沪':'上海','黑':'黑龙江','鲁':'山东','湘':'湖南','京':'北京'}
inf = {} #定义一个字典,用来存放"完整的地区名:数量"键值对
for i in cars :
inf[locals[i[0]] = inf.get(locals[i[0]],0) + 1 #充分利用.get就有返回值的特性,当第一次get时,因为inf里不存在key返回数量0并赋值给新创建的这个key
print(inf )
5.使用for循环计算1-3+5-7+9-11+13...99的结果
#方法一:普通
sum1 = 0
ls =[]
for i in range(1,100,2):
ls.append(i)
for l in range(0,len(ls)):
if l%2 == 0:
sum1 += ls[l]
else:
sum1 -= ls[l]
print(sum1)
#方法二:各元素直接%4会出现1和3两种情况
'''
sum1 = 0
ls =[]
for i in range(1,100,2):
if i%4 == 1:
sum1 += i
else:
sum1 -= i
print(sum1)
#方法三:第一次循环+下一次循环-,以此类推
sum1 = 0
count = 0
j = 1
for i in range(1,100,2):
sum1 += j*i
j *= -1
print(sum1)
代码仅用于学习交流,不做他用------持续更新
python学习之那些你不在乎却操作非主流的练习题(一)的更多相关文章
- Python学习系列(五)(文件操作及其字典)
Python学习系列(五)(文件操作及其字典) Python学习系列(四)(列表及其函数) 一.文件操作 1,读文件 在以'r'读模式打开文件以后可以调用read函数一次性将文件内容全部读出 ...
- python学习9—文件基本操作与高级操作
python学习9—文件基本操作与高级操作 1. 文件基本操作 打开文件,获得文件句柄:f = open('filename',encoding='utf-8'),open会查询操作系统的编码方式,并 ...
- python学习笔记(二)文件操作和集合
集合: 集合也是一种数据类型,一个类似列表东西,它的特点是无序的,不重复的,也就是说集合中是没有重复的数据 集合的作用: 1.它可以把一个列表中重复的数据去掉,而不需要你再写判断 2.可以做关系测试, ...
- Python学习笔记3-文件的简单操作
Python中的文件操作 Python中文件打操作离不开两个模块 os 和 shutil os:操作文件.目录: Python os模块包含普遍的操作系统功能.如果你希望你的程序能够与平台无关的话, ...
- python学习笔记——(三)文件操作
·集合操作及其相应的操作符表示集合中没有插入,只有添加,因为毕竟无序 #!/usr/bin/env python # -*- coding:utf-8 -*- # Author:Vergil Zhan ...
- Python学习笔记 -- 第六章 文件操作
I/O编程 在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘,所以,读写文件就是请求操作系统打开一个文件对象(通常称为文件描述符),然后,通过操作系统提供的接口从这 ...
- python学习笔记(十):操作excel
一.python操作excel,python操作excel使用xlrd.xlwt和xlutils模块,xlrd模块是读取excel的,xlwt模块是写excel的,xlutils是用来修改excel的 ...
- python学习笔记(九):操作数据库
我们在写代码的时候,经常会操作数据库,增删改查,数据库有很多类型,关系型数据库和非关系数据库,这里咱们介绍一下python怎么操作mysql.redis和mongodb. 一.python操作mysq ...
- Python学习,第七课 - 文件操作
Python中对文件的相关操作详解 文件的操作在今后的Python开发中也是使用非常频繁的. 先说下对文件操作的流程 打开文件,得到文件的一个句柄,赋值给一个变量 然后通过句柄对文件进行操作(内容的增 ...
随机推荐
- css 命名规范 BEM
在项目的开发过程当中, 我们往往因为日益复杂的css代码而感到力不从心. 如何合理的组织css代码成为了我们前端开发过程中必须考虑到的环节. 在读element源代码的时候, 了解到了BEM的命名风格 ...
- 给零基础的小白从0到1的react-naitve电商app——简单易学!
先上链接https://github.com/duf1991/DY...我的第一个react-native学习成果,欢迎各位大佬star和issue!
- Hadoop-No.5之压缩
Hadoop存储数据时需要着重考虑的一个因素就是压缩.这里不仅要满足节省存储空间的需求,也要提升数据处理性能.在处理大量数据时,消耗最大的是磁盘和网络的I/O,所以减少需要读取或者写入磁盘的数据量就能 ...
- php文件夹上传源码
1.使用PHP的创始人 Rasmus Lerdorf 写的APC扩展模块来实现(http://pecl.php.net/package/apc) APC实现方法: 安装APC,参照官方文档安装,可以使 ...
- ACM-ICPC 2018 沈阳赛区网络预赛 I 题 Lattice's basics in digital electronics
原题链接:https://nanti.jisuanke.com/t/31450 附上队友代码:(感谢队友带飞) #include <bits/stdc++.h> using namespa ...
- Mountain Number FZU-2109数位dp
Mountain NumberFZU-2109 题目大意:一个大于0的数字x,分写成x=a[0]a[1]a[2][3]..a[n]的形式,(比如x=1234,a[0]=1,a[1]=2,a[3]=3, ...
- jeecg中dictSelect取值方式
jeecg中的dictSelect本质是生成了很多input标签和div标签组成的,input存储的对应的就是字典中的code,div存储的就是字典中的name, 下面是取出code和那么的实例: 例 ...
- 微信小程序_(组件)scroll-view可滚动视图
微信小程序scroll-view组件官方文档 传送门 提前准备:使用<view>组件制作五条撑满的横向区域 <!--index.wxml--> Cynical丶Gary < ...
- Eclipse改变成炫酷黑色主题
有一个款Eclipse插件EclipseColorTheme,其官网地址是http://eclipsecolorthemes.org/,可以直接使用大量内置的样式主题模板,如果还不能满足你自己的个性化 ...
- 关于java中对BigDecimal加减乘除的基本用法
Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算.双精度浮点型变量double可以处理16位有效数. 在实际应用中,需要对更大或者更小的数进 ...