1.基础语法要求
首先我们来输出一个简单的语句来看看简单单行注释的要求
print('hello world!') # 输出
# 注释行#后应该有一个空格 代码行应该顶格写 要求代码文件最后一行为空行(python语言规范)
type()函数用来判断变量的数据类型
r = 10 # 定义一个变量 无需声明类型
print(type(r)) # 输出结果为<class 'int'>
# 【如果注释放在代码行后面至少要有两个空格】
定义一个字符串(str)类型数据
t = 'err18'
y = "err18" # 用引号引起来的内容就是str 单引号双引号都可以
bool类型 只有两个值 True False
w = True
print(type(w)) # <class 'bool'>
在python中输出使用print函数
- 基本输出
print('hello') # 会输出hello
print(123) # 会输出123
- 一次输出多个内容
print('isaac', 18)
# 会输出isaac 和 18 输出的两者之间会用空格隔开 可以一次输出多个内容
- 可以书写表达式
print(1 + 2) # 会输出1 + 2 的结果 3
- 可以格式化输出 需要格式化占位符
%s-字符串 %d-整型 %f-小数浮点型
arr = 'isaac'
- 要求:输出 我的名字是xxx 我很开心
print("我的名字是%s 我很开心" % arr) # 我的名字是isaac 我很开心
# %前后都需要有空格 不能用逗号 逗号是输出多个内容的用法
height = 170.5
age = 18
# %f 输出小数 默认保存六位
print("我的身高是%f cm" % height) # 我的身高是170.500000 cm
- 快捷键:Ctrl + d 快速复制一行代码
- Shift + Enter 不论光标在哪里 在下方新建一行代码
# %.nf 输出保留n位小数
print("我的身高是%.2f cm" % height) # 我的身高是170.50 cm
- 要求:输出 我的名字是xx,年龄是xx,身高是xx cm
print("我的名字是%s,年龄是%d,身高是%.2f cm" % (arr, age, height))
# 我的名字是isaac,年龄是18,身高是170.50 cm
# 变量名用括号括起来 用逗号分割 逗号后需要空格
- 输出50% 使用格式化输出时,想要输出一个%,需要使用两个%%
print("及格人数占比为%d%%" % 50)
# 及格人数占比为50%
- python3.6版本开始支持f-string,占位统一使用{},填充的数据直接写在{}里边
print(f"我的名字是{arr},年龄是{age},身高是{height}cm")
# 我的名字是isaac,年龄是18,身高是170.5cm
- 转义字符\n
将\ 和 n组合在一起,作为一个字符使用,\n代表换行
print()函数输出之后,默认添加一个换行,如果不想要换行可以去掉
print('hello', end=',') # 以一个字符(这里为逗号)结束 不换行
print('world')
print('hello')
print('world')
print('%d' % age, end='') # end = 必须是一个字符串或None 字符串用引号引起来
print('岁')
# hello,world
# hello
# world
# 18岁
- 输入使用input()函数
input(‘给用户的提示信息’),得到用户输入的内容,遇到回车代表输入结束,得到的数据都是字符串类型
password = input('请输入密码:')
print("你输入的密码是:%s" % password) # 得到的数据类型都是字符串类型
# 请输入密码:1112
# 你输入的密码是:1112
- 类型转换
先举个栗子:
price = input('请输入价格:') # str
weight = input('请输入重量:') # str
result = float(price) * float(weight) # 进行类型转换 否则无法进行运算
print("总价格为:%.2lf" % result)
# 请输入价格:13
# 请输入重量:2
# 总价格为:26.00
a.转换为int类型
a.1 int(float)
pi = 3.14
num1 = int(pi)
print(num1)
# 3
a.2 整数类型的字符串
my_str = '10'
num2 = int(my_str)
print(type(num2))
print(num2)
# <class 'int'>
# 10
b.转为float类型
b.1 int —> float
num3 = 10
num4 = float(num3)
print("%.3lf" % num4)
# 10.000
b.2 数字类型字符串 —> float
num5 = '3.14'
num6 = float(num5)
print(type(num6))
print(type(num5))
# <class 'float'>
# <class 'str'>
eval 把字符串还原为原来的数据类型 去掉字符串的引号
若本来数据类型就为str则去掉引号后为一个变量 若该变量未提前定义则报错
num7 = eval('100') # 100 int
num8 = eval('3.14') # 3.14 float
print(type(num7))
print(type(num8))
# <class 'int'>
# <class 'float'>
任何类型数据都可转换为str 加引号即可
- 运算符
*1.**取整除 返回商的整数部分
9//2 = 4 9.0//2.0 = 4.0 9.0//2 = 4.0
{num = 76} —> 取出他的个位数和十位数:
个位:num % 10 十位数: num // 10 [取余 取整]
2. ** 指数 ab为a的b次方
3. / 做除法 可输出小数 9/2 = 4.5 8/2 = 4.0 - 比较运算符
== != > < >= <= 结果为True或False - 逻辑运算符 连接两个表达式 两个表达式共同的结果决定最终的结果是True 还是 False
and 逻辑与 一假为假 若第一个为假则第二个不用再判断 结果为假
or 逻辑或 一真为真 若第一个为真则第二个不用在判断
not 逻辑非 取反 原来是True变为False
2.if判断语句
格式:
# if 要判断的条件: (记住有冒号!!)
# 条件成立时,要做的事
# 条件成立时,要做的事
# 条件成立时,要做的事
# ......
# else: (记住有冒号!!)
# 条件不成立时,要做的事
# 条件不成立时,要做的事
# ......
# 再次顶格书写 跳出if语句
# 在python中使用缩进 代表代码的层级关系 在if的缩进内 属于if语句的代码块(多行代码)
举个栗子:
age = input('请输入你的年龄:')
age = int(age)
if age >= 18:
print("YES")
else:
print("NO")
print('if判断结束')
# 请输入你的年龄:18
# YES
# if判断结束
- Debug调试 (可以查看代码执行过程 可以排查错误)
1.打断点(一般可以在代码的开始打上断点 或者在查看代码的地方打断点)
2.右键debug运行代码
3.点击 下一步 查看代码执行过程
if elif elif…else结构
只要有一个条件满足成立,后续条件都不会再进行判断
age1 = 66
if age1 <= 18:
print('11110')
elif (18 < age1 < 50) or (age1 == 66):
print('212123')
else: # 第三个语句 执行的条件为前两个判断条件均不成立
print('123923')
# 212123
if嵌套 外层成立才判断内层
www = input('请输入一个数字:')
www = int(www)
if www != 0:
if www < 0:
print('fu')
elif www > 0:
print('zheng')
else:
print('ling')
# 请输入一个数字:6
# zheng
三目运算 (if else 结构变形)
# if 判断条件1:
# 表达式1
# else:
# 表达式2
#
# 变量 = 表达式1 if 判断条件 else 表达式2 (扁平化代码)
# 变量最终存储的结构为:
# 判断条件成立 存储表达式1的值
# 判断条件不成立 存储表达式2的值
a = int(input('请输入一个数字a:'))
b = int(input('请输入一个数字b:'))
result1 = a - b if a >= b else b - a # 条件成立执行前面 不成立执行后面
print(result1)
# 请输入一个数字a:10
# 请输入一个数字b:3
# 7
3.while循环语句
# while 判断条件:
# 判断条件成立,要执行的代码
# 判断条件成立,要执行的代码
# 判断条件成立,要执行的代码
#
# 不在while的缩进内 代表和循环没有关系
i = 0
while i < 3:
print('111000')
i += 1 # 若不改变i的值则无限循环
# 111000
# 111000
# 111000
4.for循环
也称为 for遍历 会将字符串中的字符全部取到 不能实现无限循环
# for 变量 in 字符串:
# 代码
for i in 'hello':
# i 一次循环是字符串中的一个字符
print(i)
# h
# e
# l
# l
# o
- range(n) 会生成[0, n)的数据序列,不包含n
- range(a, b) 会生成[a, b)的整数序列,不包含b
for i in range(5):
print('xupt')
# xupt
# xupt
# xupt
# xupt
# xupt
for i in range(3, 7): # 3 4 5 6
print(i)
print('结束')
# 3
# 4
# 5
# 6
# 结束
- range(a, b, step) 会生成[a, b)的整数序列,但是每个数字之间的间隔(步长)是step
for i in range(1, 10, 3): # 1 4 7
print(i)
# 1
# 4
# 7
break 和 continue只能用在循环中!!!!
- break是终止循环的执行,即循环代码遇到break,就不再循环了
- continue是结束本次循环,继续下一次循环,即本次循环剩下的部分不再执行,但会进行下一次循环
有五个苹果 编号12345
1.吃了三个苹果后,吃饱了,后续的苹果不吃了
2.吃了三个苹果但没饱,在吃第四个苹果时发现半条虫子,这个不吃了,继续吃下一个
apple = 5
for i in range(5): # 0 1 2 3 4
i = int(i)
if i < 2:
print('吃了第%d个苹果' % (i + 1))
continue
elif i == 2:
print('吃了第%d个苹果' % (i + 1))
result2 = int(input('吃饱了吗?饱了(1)没饱(0)'))
if result2 == 1:
print('吃饱了,不吃了')
break
else:
continue
else:
if i == 3:
print('第%d个苹果有虫子没有吃' % (i+1))
continue
elif i == apple-1:
print('这是最后一个苹果')
break
else:
print('吃了第%d个苹果' % (i + 1))
continue
# 吃了第1个苹果
# 吃了第2个苹果
# 吃了第3个苹果
# 吃饱了吗?饱了(1)没饱(0)0
# 第4个苹果有虫子没有吃
# 这是最后一个苹果
循环else结构
# 如:
# for x in xxx:
# if xxx:
# xx
# else: (if判断条件不成立时 会执行)
# xxx
# else: (循环代码运行结束,但不是被break终止时 会执行)
# xxx
my_str = 'hello python'
s = input('您想要查找的字母:')
for i in my_str:
if s == i: # 已判断成立 不用再去找了 用break终止循环
print('%s存在!' % s)
break
else:
print('未找到该字母!')
# 您想要查找的字母:w
# 未找到该字母!
arrr = 3
i = 0
while i != arrr: # while循环也可以用
print('No')
i += 1
else:
print('Yes')
# No
# No
# No
# Yes
版权声明:本文为weixin_61965462原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。