软件测试:python笔记(1)

这篇博客介绍了Python的基础知识,包括注释、变量、格式化输出、输入函数、类型转换、条件语句、函数使用及调试,以及字符串操作如遍历、替换、切片等。还探讨了局部和全局变量、容器类型,并提供了实际应用案例,如邮箱地址处理。

python学习
1、注释
01 单行:#
02 多行:""" “”" 三引号 快捷键:按住shift,点击两次双引号键
03 选中内容后加注释 ctrl+/
2、变量
01 变量名由数字,字母下划线组成,数字不能开头
02 变量名一般用小写字母+下划线组成
3、格式化输出
占位符:占位,位置上数据的类型
%s string
%d digit
%f float
%% 输出百分号
例:
name=‘司马狗剩’
age=18
salary=100.98
print(‘他的名字是%s,他的年龄是%d,他的工资是%.2f’%(name,age,salary))
print(‘游戏胜率:%d%%’ %87)
4、input函数
5、类型转换

left_num=input('请输入第一个数字:')
right_num=input('请输入第二个数字:')
result=left_num+right_num
print(type(left_num),type(right_num))
print(result)
显示:
请输入第一个数字:666
请输入第二个数字:888
666888
 
left_num=input('请输入第一个数字:')
right_num=input('请输入第二个数字:')
left_num_int=int(left_num)
right_num_int=int(right_num)
result=left_num_int+right_num_int
print(type(left_num_int),type(right_num_int))
print('%d + %d 的结果是 %d '%(left_num_int, right_num_int, result))
显示:
请输入第一个数字:666
请输入第二个数字:888
<class 'int'> <class 'int'>
666 + 888 的结果是 1554 

6、BUG
6.1导致程序崩溃,终止运行
6.1.1语法错误
6.1.2对语法理解不到位
6.1.3手误
7、if 语句
例:

#获得用户输入的用户名
user_name=input('请输入你的用户名:')
#正确的用户名
correct_name='admin'
#判断
if user_name==correct_name:
  print('欢迎%s登陆系统!' % user_name)
else:
  print('登陆失败,哈哈哈哈哈')

例:

a=10
b=20
ret=a>b and a or b
print(ret)

显示:20
8、分数案例

score=int(input('请输入你的分数:'))
if score>90 and score<=100:
    print('你太棒了')
elif score>80 and score<=90:
    print('优秀!')
elif score>70 and score<=80:
    print('良好')
elif score>60 and score<=70:
 print('及格')
elif score>100 or score<0:
  print('输入错误')  
else:
    print('你完了')

第二种方法为好

score=int(input('请输入你的分数:'))
if score>=0 and score<=100:
 if score>90 and score<=100:
    print('你太棒了')
 elif score>80 and score<=90:
    print('优秀!')
 elif score>70 and score<=80:
    print('良好')
 elif score>60 and score<=70:
    print('及格')
 else:
    print('你完了')
else:
  print('输入有误!')

9、练习
#猜拳游戏

import random
user_quan=int(input('请输入 石头(0),剪刀(1),布(2):'))    #不要忘记加int
computer_quan=random.randint(0,2)
print(computer_quan)
if (user_quan==0 and computer_quan==1)or
 (user_quan==1 and computer_quan==2) or
  (user_quan==2 and computer_quan==0):
    print('恭喜,你赢了!')
elif  user_quan==computer_quan:
    print('平局')
else:
    print('你输咯,哈哈哈哈')

#打印1-100数字

i=1
while i<=100:
    print(i)
    i=i+1
#打印1-100奇数
i=1
while i<=100:
    if i%2 !=0:
        print(i)
    i=i+2

#打印1-100偶数

i=1
while i<=100:
    if i%2 ==0:
        print(i)
    i=i+1

#打印1-100的和

i=1
total=0
while i<=100:
    total=total+i
    i=i+1
print(total)

#打印1-100的奇数和

i=1
total=0
while i<=100:

    if i%2!=0:
        total=total+i
    i=i+1
print(total)

#打印星星

# print('*'*1)
# print('*'*2)
# print('*'*3)
# print('*'*4)
# print('*'*5)

i=1
while i<=5:
    print('*' * i)
    i=i+1

#打印1-100的和,跳过50

i=1
total=0
while i<=100:
    if i==50:
        i=i+1
        continue
    total=total+i
    i=i+1
print(total)

10、函数

def my_add(a,b):
    ret = a + b
    print(ret)
my_add(10,20)

11、使用调试模式你
01、先加断点
02、启动调试模式
12、函数的返回值

    def my_add(a,b):
        ret = a + b
        return ret

#保存函数返回的结果
a=my_add(10,20)
my_final=a+100
print(my_final)

函数的返回值有没有,需要由编写的函数功能决定

13、函数强化练习

#编写一个函数用于计算start到end结束之间所有数的累加和

def leijiahe(start,end):
    i=start
    my_sum=0
    while i<=end:
       my_sum=my_sum+i
       i+=1
    return (my_sum)
ret=leijiahe(10,15)
print('ret:',ret)

#编写一个函数根据传入的运算符,进行相应的加减乘除运算符计算

def my_caculater(left,right,fuhao):
    a=left
    b=right
    if fuhao=='+':
        ret = a + b
    elif fuhao=='-':
        ret=a-b
    elif fuhao=='*':
        ret=a*b
    elif fuhao=='/':
        ret=a/b
    else:
        print('您输入法的操作符有误!')
        ret=None
    return (ret)
ret=my_caculater(10,20,'#')
print(ret)

14、return 关键字

14.1函数中可以出现多个return,但是有且只有一个会被执行
14.2return 后面不跟值,return单独使用,等价于return None

15、默认参数

我们在给函数形参设置默认参数时,并不会给所有参数设置默认值
注意点:如果某一位置形参设置了默认参数,那么该位置之后的所有参数都应该设置默认参数

16、局部变量和全局变量

局部变量:在函数内部定义的变量,只能在函数内部使用
全局变量:在函数外部定义的变量,全局都能使用

17、容器

分为序列容器和非序列容器
序列容器:字符串、列表、元组
非序列容器:字典、

18、字符串遍历
遍历:不重复的访问容器中的每一个元素
索引:索引支持正数索引,也支持负数索引
my_str=‘hello’
print(my_str[4]) #4时索引,下标
print(my_str[-1])

#while 循环遍历

my_str='hello'
i=0
while i < 5 :
    print(my_str[i],end=' ')
    i+=1

for循环遍历

 my_str='hello'
 for v in my_str:
        print(v,end=' ')

19、字符串替换

#replace并不会替换原本的字符串,替换完毕之后返回一个新的字符串
poetry='远看泰山黑乎乎,上头细来下头粗,汝把泰山倒过来,下头细来上头粗,汝'
new_poetry=poetry.replace('汝','如',1)
print(poetry)
print(new_poetry)

20、字符串容器特点

 20.1字符串一旦被定义不允许修改修改
 20.2字符串容器中元素都是字符串类型

21、查找子字符串

user_email='simagousheng@itcast.cn'
#如果查找到,返回子串第一次出现的位置
#如果查找不到 @ ,返回-1
position=user_email.find('@')
if position==-1:
    print('邮箱不合法!')
else:
    print('@的位置是:',position)

21、字符串切片

起始值不写表示从0开始,结束值不写表示一直到结束,两个都不写表示:从开始到结束

#字符串提供了一种语法,用来获取字符串中的一个子串
user_email='simagousheng@itcast.cn'
print(user_email[0])
#切片语法:左闭右开
print(user_email[0:4])       # #等价于 print(user_email[:4])  
#获得容器元素的个数
string_length=len(user_email)
print(user_email[13:string_length])    #等价于 print(user_email[13:])   
print(user_email[:])
print(user_email[0:12:3])  #第三个值代表步长

22、邮箱案例

position=user_email.find('@')
if position==-1:
    print('邮箱不合法!')
else:
    print('用户名是:',user_email[:position])
    print('邮箱是:',user_email[position+1:])

23、邮箱案例方式二

split 拆分

 user_email='simagousheng@itcast.cn'
    char_count=user_email.count('@')
    #获得@字符串在user_name中出现的次数
    if char_count>1:
        print('你的邮箱输入不合法!')
    else:
        ret=user_email.split('@')
        print('用户名是:',ret[0])
        print('用户名是:',ret[1])

24、去除两侧空格

username =input('请输入你的用户名:')
#strip函数默认去除字符串两侧空格
new_username=username.strip()
print(new_username)
# isalpha 判断字符串中所有元素是否都是字母
if new_username.isalpha():          #   .isdigit  判断是否是数字
    print('恭喜你,注册成功')
else:
    print('注册失败!')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值