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开发中也是使用非常频繁的. 先说下对文件操作的流程 打开文件,得到文件的一个句柄,赋值给一个变量 然后通过句柄对文件进行操作(内容的增 ...
随机推荐
- JAVA学习第三周
判断某个字符串是否为回文 时间2019年9月23日下午 这个题有很多种写法,其一是用String来存这个字符串,然后调用charAt函数进行字符串的遍历,从两头开始遍历是否相等 其二是用toCharA ...
- VUE-文本-事件-属性指令
一.Vue文本指令 文本指令: 1.{{ }} 2.v-text:不能解析html语法的文本,会原样输出 3.v-html:能解析html语法的文本 4.v-once:处理的标签的内容只能被解析一次 ...
- for update的作用和用法
一.for update定义 for update是一种行级锁,又叫排它锁,一旦用户对某个行施加了行级加锁,则该用户可以查询也可以更新被加锁的数据行,其它用户只能查询但不能更新被加锁的数据行.如果其它 ...
- jquery animate()方法 语法
jquery animate()方法 语法 作用:animate() 方法执行 CSS 属性集的自定义动画.该方法通过CSS样式将元素从一个状态改变为另一个状态.CSS属性值是逐渐改变的,这样就可以创 ...
- jquery trigger() 方法 语法
jquery trigger() 方法 语法 作用:trigger() 方法触发被选元素的指定事件类型.深圳大理石平台 触发事件:规定被选元素要触发的事件. 语法:$(selector).trigge ...
- input获取焦点弹出系统虚拟键盘时,挡住input解决方法
Element.scrollIntoView() 方法让当前的元素滚动到浏览器窗口的可视区域内. <input type="tel" placeholder="输入 ...
- c++两数组合并算法
#include <iostream> #define MAXSIZE 100 using namespace std; int combine(int a[],int b[],int c ...
- tsconfig.json配置说明
配置 tsconfig.json tsconfig.json 所包含的属性并不多,只有 7 个,ms 官方也给出了它的定义文件.但看起来并不怎么舒服,这里就翻译整理一下.(若有误,还请指出) file ...
- MySQL:如何选取Table中的50到100行
MySQL:如何选取Table中的50到100行 使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?不用担心,MySql已 经为我们提供了这样一个功能. ? 1 2 [sql] ...
- 在CentOS 7上搭建WordPress
环境(ECS阿里云服务器) 服务器操作系统:CentOS 7.3 : 博客部署服务器:Apache HTTP: 数据库:MySql: 框架:WordPress: 步骤 一.安装 Apache HTTP ...