01-changeType
02-if
03-range and for
04-forloop
05-whileloop
01-changeType
1.1.将其他的数据转换成数字
a.int():将其他数据转换成int类型的数据
float1 = 23.45
print(int(float1)) #将浮点数转换成整数(直接去掉小数部分)
bool1 = True
print(int(bool1)) #将布尔值转换成整数,True -> 1,False -> 0
str1 = '-123'
print(int(str1)) #只有纯数字字符串或者纯数字字符串前有+、—号的字符串才能转换串相应的整数
b.float() 将其他数据转换成浮点型数据
c.bool() 将其他的数据转换成布尔值
数字 —> bool: 非0是True,0是False
print(bool(12.8))
print(bool(-12.9))
print(bool(0))
# 字符串 —>bool: 除了空串('')是False,其他的都是True
print(bool('abd'))
print(bool('00o'))
print(bool(''))
注意:在if或者while循环后的条件语句,可以不是结果为True/False的表达式,也可以是值是其他类型数据的表达式,判断的时候就看这个值转换成bool后的结果是True还是False。
if 10:
print('aaa')
1.2.str() 将其他数据转换成字符串
判断一个字符串是否是空串,如果不是就直接打印该字符串,否则就打印“空”
str1 = 'dg'
# 方法1:
if str1:
print(str1)
else:
print('empty string')
# 方法2:
if str1 != '':
print(str1)
else:
print('empty string')
02-if
if、elif、else都是关键字
基本格式:
if 条件语句1:
执行语句块1
elif 条件语句2:
执行语句块2
else:
执行语句块3
执行过程:
1.判断条件语句1是否为True,如果为True就执行冒号后面的执行语句块1,整个条件语句就执行完了;如果是False,就去判断条件语句2是否为True。
2.如果是True就执行执行语句块2,再再执行其他语句。如果是False,就直接执行执行语句块
3,再执行其他语句。
注意:冒号后面的语句块号冒号所在的语句要保持一个缩进。
if 语句可以嵌套
if 条件语句:
if 条件语句:
执行语句
2.1.
if 条件语句:
执行语句块
判断条件语句的值是否为True,如果为True,就只执行执行语句块,否则就执行if语句后面的其他语句
要求:判断年龄是否大于18,如果大于18就输出'成年人'
age = 19
if age > 18:
print('adult')
print('------')
print('+++++=')
练习:判断一个数是否是偶数,如果是就打印'xxx是偶数'
num = 6
if num % 2 == 0:
print('%d是偶数'%(num))
2.2
if 条件语句:
执行语句块1
else:
执行语句块2
判断条件语句是否为True,如果为True,就执行执行语句块1,否则就执行执行语句块2.
num = 11
if num % 2 == 0:
print('%d是偶数'%(num))
else:
print('%d是奇数'%(num))
print('-------')
练习:输入一个数,如果这个数大于10,就输出他的两倍值,否则输出这个数的2次幂。
num = 9
if num > 10:
print(num*2)
else:
print(num**2)
print('------')
input(): 从控制台获取键盘输入的一个字符串,以回车结束。
# inputvalue = input('请输入一个数:')
# print(type(inputvalue))
# new_value = int(inputvalue)
# if new_value > 10:
# num = new_value * 2
# print(num)
# else:
# num = new_value ** 2
# print(num)
# print('----2----')
# print(type(new_value))
比较运算符和+,两边可以是字符串也可以是数字,但必须保持一致
if-elif-elif-else
给一个成绩,判断成绩是优秀(90-100)、良好(80-89)、中等(60-79)、不及格(60以下)
grade = 8
if grade < 60:
if grade < 0:
print('Result is wrong')
else:
print('不及格')
elif grade < 80:
print('中等')
elif grade < 90:
print('良好')
elif grade <=100:
print('优秀')
else:
print('Result is wrong')
总结:1.如果要求中需要多个判断,可以使用多个elif的if语句。
2.3一个if/elif/else语句中可以嵌套其他的if语句,要注意缩进问题。
给年龄,判断年龄处于:婴儿(0-1岁)、儿童(2-4岁)、少年(5-12岁)、青年(13-18岁)、成年(19-40岁)、中年(41-60岁)、老年(60岁以上)
# age = int(input('Please enter age'))
age = 13
if age <= 1:
if age<=0:
print('age wrong')
else:
print('baby')
elif age <= 4:
print('child')
elif age <= 12:
print('early youth')
elif age <= 18:
print('youth')
elif age <= 40:
print('adult')
elif age <= 60:
print('middle age')
else:
print('old age')
说明:python中没有switch语法
pass:占位,防止因为没有写块结构,而出现语法错误
if 2<= age <=4:
print('child food')
else:
pass
03-range and for
打印1-100:
3.1.range()函数:可以生成一个数值范围
a.用法1:range(n),生成0~(n-1)的值
print(range(10))
for x in range(10):
print(x)
b用法2:range(m,n),生成m~(n-1)的数
for x in range(1,101):
print(x,end=',')
print('*******end****')
打印0~100之间所有的偶数
for x in range(0,101):
if x % 2 == 0:
print(x,end=',')
else:
pass
print('\n--------end--------')
c用法3:range(m,n,step):从m开始每step取一个数,取到n前一个数为止,step的值默认是1
for x in range(1,100,2):
print(x,end=',')
print('\n===============我是拉风的分割线=============')
不通过字符串相乘,打印10遍"="
注意:如果循环中的变量取到的值没有意义,循环只是单纯的控制次数,
这个时候for后面的变量名一般会用“_”代替。
for _ in range(0,10):
print('=',end=' ')
求1+2+3+...+100
sum = 0
for x in range(1,101):
sum +=x
print('\n',sum)
求10!的阶乘。n!=123...*n
factorial = 1
for x in range(1,11):
factorial *= x
print(factorial)
04-forloop
python中的循环:for循环、while循环(一个操作需要重复执行多次,这个时候就考虑使用循环)
python中的for循环只有for-in循环
格式:
for 变量名 in 列表:
循环体
执行过程:使用变量去依次获取列表中等数据,直到获取完为止; 每获取一个数据,执行一次循环体
循环次数:由列表中的数据的个数决定
注意:变量名只会依次从列表中取值,无法进行修改
例如:
for x in range(5):
print(x,end=',')
x += 3
value: 1,2,3,4
去获取字符串中每一个字符
str1 = 'sdgfdaaasfsf'
for char in str1:
print(char)
去统计字符串中'a'出现的次数
count1 = 0
for char in str1:
if char == 'a':
count1 = count1 + 1 #count1+=1
else:
pass
print(count1)
05-whileloop
格式:
while 条件语句:
循环体
执行过程:
判断条件语句的结果是否为True,如果为True就执行一次循环体。执行完循环体后再去判断条件语句是否为True,为True的话又执行循环体。 重复这个过程,直到条件语句的结果为False
for循环可以实现的操作,while循环都可以
# 打印1-100
# num=1 print(1) num = 1 + 1 = 2
# num=2 Print(2) num = 2 + 1 = 3
num = 1
while num <= 100:
print(num)
num += 1
计算1+2+3+...+100
num = 1
sum = 0
while num <= 100:
sum += num
num += 1
print(sum,num)
print(sum,num)
求1-100中所有偶数的和(while循环)
num = 1
sum2 = 0
while num <= 100:
if num % 2 == 0:
sum2 += num
print(sum2,num)
else:
pass
num +=1
print(sum2)
print('===========可爱的分隔符===========')
网友评论