软件测试软件测试test

python基础篇(二)

2018-10-29  本文已影响16人  会飞的小马
name = ['a','b','c','d','e']
print (name[1:3])
输出
['b','c']
print (name[-2:])
输出
['d','e']
name_new = name[:]
print (name_new)
输出
 ['a','b','c','d','e']
dimensions = (200, 50)
for dimension in dimensions:
    print(dimension)
dimensions = (400, 100)#重新定义元组,原来的元组值失效
for dimension in dimensions:
    print(dimension)
输出
200,50
400,100
  • if 语句

几个常见判断符号:
【 == 】是否等于
【!=】 是否不等于

foods = ['a','b','c','D','e']
for food in foods:
    if food.lower() == 'd': #注意这里将变量food都转换为转换为小写,此时不论输入是不区分大小写
         print ('this:'+food)
    else:
         print (food)
条件语句中可包含各种数学比较,如小于、小于等于、大于、大于等于
a=15
if a != 17:
    print ('数值合适')
b=16
if b <= 17:
    print ('数值合适')
a=15
if a>7 and a<16: # or 用法与and差不多,多条件筛选
    print ('T')
else:
    print ('F')
car = 'subaru'
print(car == 'subaru')
输出
true#输出时判断,直接输出True 或者 False
a=17
if a>15:
    print('A')
else :
    print('B')
输出
A
a=17
if a>17:#若此处还是a>15 ,则代码执行到此处时就符合条件,输出 A
    print('您的等级是 A')
elif a==17:
    print('您的等级是 C')
else :
    print('您的等级是 B')
输出
您的等级是 C
elif 可以多个重复使用,直到符合条件

使用多重时,上面的代码也可优化如下

a=18
if a>18: 
    result='A'
elif a==17:
    result='C'
elif a==18:
    result='D'
else :
    result='B'
print('您的等级是'+result)
输出
C

注意:
1、else 只要不满足任何if 或elif 中的条件测试,其中的代码就会执行,这可能会引入无效甚至恶意的数据。如果知道最终要测试的条件,应考虑使用一个elif 代码块来代替else ,这样就可以肯定,仅当满足相应的条件时,你的代码才会执行。
2、if -elif -else 当满足条件时后面的代码就不会执行,有时候需要执行多个条件或者需要多个同时满足的条件,我们可以用连续的 if 来执行,一个if 相当于一个独立的语句

  • 字典

字典 是一系列 【键—值】对,每个键 都与一个值相关联,与键相关联的值可以是数字、字符串、列表乃至字典,字典存储的是一个对象各种信息。字典是一种动态结构,可随时在其中添加【键—值】对,修改只需重新定义某键的值。
例1:

foods ={}
foods['a'] = 'a1'
foods ['b'] = 'b2'
print (foods)
输出
{'a':'a1','b':'b2'}

例2:

foods ={}
foods['a'] = 2
foods ['b'] = 3
foods ['money']='H'
if foods['money'] == 'L':
    a1=1
elif foods['money'] == 'Y':
    a1=2
elif foods['money'] == 'H':
    a1=3
foods['a']= foods['a'] + a1
print ('You have to pay '+str(foods['a'])+' yuan')

输出
You have to pay 5 yuan

删除【键—值】:del foods['a'] #删除操作是永久操作不可恢复

foods ={
'a':'a1',
'b':'b1',
}     
for k,v in foods.items():
    print ('this k '+k+'this v '+v)
输出
this k a this v a1
this k b this v b1

例2、例3

foods ={
'a':'a1',
'b':'b1',
}     
for k in foods.keys():    #例2,此处的keys()可以省略,输出的值一致
    print ('this k '+k)
for v in  sorted(foods.values()):  #例3,sorted()函数,对结果进行排序
    print ('this v '+v)
输出
this k a 
this k b
this v a1 
this v b1 

遍历到某值时加以利用,如下

love = {
'jen': 'python',
'sarah': 'c',
'edward': 'ruby',
'phil': 'python',
}
friends = ['phil', 'sarah']
for name in love .keys():
    print(name.title())
    if name in friends:
        print(" Hi " + name.title() +
            ", I see your favorite language is " +
            love [name].title() + "!")  
输出
Jen
Sarah
 Hi Sarah, I see your favorite language is C!
Edward
Phil
 Hi Phil, I see your favorite language is Python!

set()使集合的值独一无二,可在输出集合的适合加上。
如下

love = {
'jen': 'python',
'sarah': 'c',
'edward': 'ruby',
'phil': 'python',
}
for v in  sorted(set(love.values())): #去重后排序
    print (v.title())
输出
C
Python
Ruby
foods =[]
for food_number in range(5):
    food_1={'食物':'蔬菜','烹饪':'清蒸','盐':'少',}
    foods.append(food_1)
for food in foods[0:2]:  #对前两个字典进行修改
    if food['食物']=='蔬菜':
        food['食物']='娃娃鱼'
        food['烹饪']='红烧'
        food['盐']='多'
for food in foods:
    print (food)
print ("数量:"+str(len(foods))) #整型,统计
输出
{'食物': '娃娃鱼', '烹饪': '红烧', '盐': '多'}
{'食物': '娃娃鱼', '烹饪': '红烧', '盐': '多'}
{'食物': '蔬菜', '烹饪': '清蒸', '盐': '少'}
{'食物': '蔬菜', '烹饪': '清蒸', '盐': '少'}
{'食物': '蔬菜', '烹饪': '清蒸', '盐': '少'}
数量:5

字典中嵌套列表,例如:

Recipes={'食物名':'红烧鱼','配料':['辣椒','蒜','桂皮'],}
print("您点的食物为:"+"“"+Recipes['食物名']+"”"+"\n其的配料包括:")
for peiliao in Recipes['配料']:
    print(peiliao)
输出
您点的食物为:“红烧鱼”
其的配料包括:
辣椒
蒜
桂皮

字典中嵌套字典,例如:

users = {'15255554444':{
           '姓':'张','名':'三','评分':'75',
           },
           '18555556666':{
           '姓':'李','名':'四','评分':'87',
           },
           '13211115874':{
           '姓':'李','名':'四','评分':'95',
           },
               }    #用手机号作为账号(键),后面跟账号的信息
for username,userinfo in users.items():
    print ("\n"+userinfo['姓']+userinfo['名']+"("+username+")"+"您的评分为:"+userinfo['评分']+"。")
输出
张三(15255554444)您的评分为:75。

李四(18555556666)您的评分为:87。

李四(13211115874)您的评分为:95。
上一篇 下一篇

猜你喜欢

热点阅读