Python-复习-习题-13

复习

dict: dic = {'name':'alex'}
增:dic['age'] = 21 存在就覆盖
dic.setdefault() 存在什么也不作,没有就增长html

删除:pop()按照key删除,有返回值
clear
del dic['name']
popitem()随机删除 返回的是元祖python

改 update #覆盖添加git


dic.keys()
dic.values()
dic.items()app

for k,v in dic.items():
print(k,v)less

dic.get(key,None) #没有值返回后面的参数none函数

 

习题

 
''' 三、元素分类 有以下值li= [11,22,33,44,55,66,77,88,99,90],将全部大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。 即: {'k1': 大于66的全部值列表, 'k2': 小于66的全部值列表} ''' li= [11,22,33,44,55,66,77,88,99,90] dic ={} l_greater=[] #大于66的全部值列表
l_less=[]    #小于66的全部值列表
for i in li: if i == 66:continue
    if i > 66 : l_greater.append(i) else : l_less.append(i) dic.setdefault('k1',l_greater) dic.setdefault('k2',l_less) print(dic) 
# 输出:{'k1': [77, 88, 99, 90], 'k2': [11, 22, 33, 44, 55]}


''' 四、输出商品列表,用户输入序号,显示用户选中的商品 商品 li = ["手机", "电脑", '鼠标垫', '游艇'] 要求:1:页面显示 序号 + 商品名称,如: 1 手机 2 电脑 … 2: 用户输入选择的商品序号,而后打印商品名称 3:若是用户输入的商品序号有误,则提示输入有误,并从新输入。 4:用户输入Q或者q,退出程序。 ''' flag = True while flag: li = ["手机", "电脑", "鼠标垫", "游艇"] for i in li: print('{}\t\t{}'.format(li.index(i)+1,i)) num_of_chioce = input('请输入选择的商品序号/输入Q或者q退出程序:') if num_of_chioce.isdigit(): num_of_chioce = int(num_of_chioce) if num_of_chioce > 0 and num_of_chioce <= len(li): print(li[num_of_chioce-1]) else:print('请输入有效数字') elif num_of_chioce.upper() == 'Q':break else:print('请输入数字')

 

index()

  函数用于从列表中找出某个值第一个匹配项的索引位置。post

语法

index()方法语法:spa

list.index(obj)

参数

  • obj -- 查找的对象。

返回值

该方法返回查找对象的索引位置,若是没有找到对象则抛出异常。code

实例

如下实例展现了 index()函数的使用方法: #!/usr/bin/python3
 list1 = ['Google', 'Runoob', 'Taobao'] print ('Runoob 索引值为', list1.index('Runoob')) print ('Taobao 索引值为', list1.index('Taobao')) 以上实例输出结果以下: Runoob 索引值为 1 Taobao 索引值为 2

 

描述

index() 方法检测字符串中是否包含子字符串 str ,若是指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,该方法与 python find()方法同样,只不过若是str不在 string中会报一个异常。orm

语法

index()方法语法:

str.index(str, beg=0, end=len(string))

参数

  • str -- 指定检索的字符串
  • beg -- 开始索引,默认为0。
  • end -- 结束索引,默认为字符串的长度。

返回值

若是包含子字符串返回开始的索引值,不然抛出异常。

实例

如下实例展现了index()方法的实例: #!/usr/bin/python3
 str1 = "Runoob example....wow!!!" str2 = "exam"; print (str1.index(str2)) print (str1.index(str2, 5)) print (str1.index(str2, 10)) 以上实例输出结果以下(未发现的会出现异常信息): 7
7 Traceback (most recent call last): File "test.py", line 8, in <module>
    print (str1.index(str2, 10)) ValueError: substring not found

 

Python3 字符串格式化

字符串的格式化方法分为两种,分别为占位符(%)和format方式。占位符方式在Python2.x中用的比较普遍,随着Python3.x的使用愈来愈广,format方式使用的更加普遍。

一 占位符(%)

 

%d

实例(Python3.0+):

age = 29
print("my age is %d" %age) #my age is 29

 

%s

实例(Python3.0+):

name = "makes"
print("my name is %s" %name) #my name is makes

 

%f

实例(Python3.0+):

print("%6.3f" % 2.3) #2.300
print("%f" %2.3) #2.300000

 

二 format方法

位置映射

实例(Python3.0+):

print("{}:{}".format('192.168.0.100',8888)) #192.168.0.100:8888

 

关键字映射

实例(Python3.0+):

print("{server}{1}:{0}".format(8888,'192.168.1.100',server='Web Server Info :')) #Web Server Info :192.168.1.100:8888  

 

元素访问

实例(Python3.0+):

print("{0[0]}.{0[1]}".format(('baidu','com'))) #baidu.com 

 

填充对齐

  1. ^、<、>分别是居中、左对齐、右对齐

实例1(Python3.0+):

print("{0}*{1}={2:0>2}".format(3,2,2*3)) #3*2=06
 
print("{:*^30}".format('centered')) #***********centered*********** 

 

实例2(Python3.0+):九九乘法表

for i in range(1,10): a = 1
    while a <= i: print("{0}*{1}={2:0>2}".format(a,i,a*i),end="\t") a +=1
    print() """ 1*1=01 1*2=02 2*2=04 1*3=03 2*3=06 3*3=09 1*4=04 2*4=08 3*4=12 4*4=16 1*5=05 2*5=10 3*5=15 4*5=20 5*5=25 1*6=06 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36 1*7=07 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49 1*8=08 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64 1*9=09 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81 """

 

精度设置

实例(Python3.0+):

print("{:.3f}".format(2.1415)) #2.142
print("{:.10f}".format(3.1415)) #3.1415000000
相关文章
相关标签/搜索