一、初识编码(密码本)
计算机中所有的数据本质上都是用0和1的组合来存储的。编码就相当于密码本,在计算机中有多个密码本:utf-8编码、gbk编码等
- 注意事项:在计算机中若以某个编码形式进行保存文件,以后也要以这种编码形式去打开这个文件,否则就会出现乱码。
二、编程初体验
- 编码必须要保持:保存和打开一致,否则会乱码
- 默认python解释器使用utf-8编码的形式打开文件
- 若想要修改python的默认解释器编码,可以按照如下方式更改(保持代码使用的编码和python右下角的编码一致)
# -*- coding:gbk -*-
print("hello world")
- 建议所有python代码文件都要使用utf-8的形式书写、保存
三、输出
- 将结果或者内容想要呈现给用户:
print("hello worid 1")
- 关于输出
【1】默认print在尾部会加换行符
print("hello worid")
print("hello world 1")
输出效果;
hello world
hello world 1
【2】 print后不换行,可在输出内容后加,end=""
,若想添加标点,可使用,end=“,”
1. 输出不换行:
print("hello worid",end="")
print("hello world 1",end="")
输出为:
hello woridhello world 1
2. 添加标点的形式:
print("hello worid",end=",")
print("hello world 1",end=".")
输出为:
hello worid,hello world 1.
四、数据类型
1. 整形(int)
整形即为整数:int
整形可支持加减乘除运算
print(666)
print(2 + 10)
print(2 * 10)
print(10 / 2)
print(10 % 3)
print(2 ** 4)
2. 字符串(str)
- 字符串及文本信息,文本信息需要用英文的
“”
引用起来, 用英文的双引号""
、单引号‘’
,三引号均可。三引号可用于展示多行的字符串
【1】输出单行字符串
print("你好")
输出为:
你好
【2】三引号输出多行字符串
print("""你好
hello world
hello world 1""")
输出为:
你好
hello world
hello world 1
- 字符串也可支持部分运算:
【1】加:可将两个字符串拼接起来
【2】乘:让整形和字符串相乘,实现重复出现
【1】加
print("你好"+"hello world")
输出为:你好hello world
【2】乘
print(5*"你好")
输出为:
你好你好你好你好你好
3.布尔类型(bool)
布尔类型中共有两个值:True / False
,可用于判断真假,
可用于比较两个整形,或者两个字符串,也可以比较整形与字符串(1==你好
,可以比较,1>你好
不可以比较,会出现报错)
print(1>2)
print(1<2)
输出为:
False
True
4.数据类型的转换
- int,整型定义时,必须是数字且无引号,例如:5、8、9
- str,字符串定义时,必须用双引号括起来,例如:”你好”、”hello world”、”666”
- bool,布尔值定义时,只能写True和Fals
不同的数据类型都有不同的功能,例如:整型可以加减乘除 而 字符串只能加(拼接)和乘法。
如果想要做转换可遵循一个基本规则:想转换什么类型就让他包裹一些。
例如:str(666) = "666"是将整型转换为字符串、int(“888”)是将字符串转 888。
注意:文字是无法转换成为字符串的
- 转换为整形
【1】字符串转换为整形
print("6"+"9")
输出结果为:69
print(int("6" )+ int("9"))
输出结果为:15
int("你好") 报错
【2】布尔类型转换为整形
print(int(True))
输出为:1
print(int(False))
输出为:0
- 转换为字符串
【1】整形转字符串
print(str(345))
输出为:345
print(str(345)+str(666))
输出为:345666
【2】布尔类型转换为字符串
print(str(True))
输出为:True
print(str(False))
输出为:False
- 转换为布尔类型
【1】整形转布尔
bool(1) True
bool(2) True
bool(0) False
bool(-10) True
【2】字符串转布尔
bool("hello") True
bool("你好") True
bool("") False
bool(" ") True
总结:
- 其他类型转换为布尔类型时,空字符串以及0,输出为false,其他均为true
- 字符串转换为整形时,只有数字格式“888”的字符串可以转换为整形,其他均会报错
- 想要转换为哪种类型,就用这种类型的英文包裹一下即可
str(...)
int(...)
bool(...)
五、变量
变量相当于别名,让变量名指向某个值,格式为: 【变量名 = 值】
name = 1
print(name)
输出为:1
注意(变量规范):
- 变量名只能由 字母、数字、下划线 组成。
- 变量名不能以数字开头
- 变量名不能用Python内置的关键字
内置关键字:
[‘and’, ‘as’, ‘assert’, ‘break’, ‘class’, ‘continue’, ‘def’, ‘del’, ‘elif’, ‘else’, ‘except’, ‘exec’, ‘finally’, ‘for’, ‘from’, ‘global’, ‘if’, ‘import’, ‘in’, ‘is’, ‘lambda’, ‘not’, ‘or’, ‘pass’, ‘print’, ‘raise’, ‘return’, ‘try’, ‘while’, ‘with’, ‘yield’]
建议
- 下划线连接命名(变量一般用小写)
my_name = "xy"
brother_age = 19
- 见名知意
age = 18
color = "red"
六、注释
写代码时候,如果想要对某写内容进行注释处理,即:解释器忽略不会按照代码去运行。
- 单行注释(井号键)
# 声明一个name变量
name = "xy"
age = 19 # 这表示当前用户的年龄
注意:快捷键 ctrl + ?
- 多行注释(三引号)
# 声明一个name变量
# 声明一个name变量
# 声明一个name变量
name = "alex"
"""
多行注释内容
多行注释内容
多行注释内容
"""
age = 19
七、输入
输入,可以实现程序和用户之间的交互。
# 1. 右边 input("请输入用户名:") 是让用户输入内容。
# 2. 将用户输入的内容赋值给name变量。
name = input("请输入用户名:")
if name == "xy":
print("登录成功")
else:
print("登录失败")
特别注意:用户输入的任何内容本质上都是字符串。
八、条件语句
1. 简单条件语句
if 条件 :
条件成立之后的代码...
条件成立之后的代码...
条件成立之后的代码...
else:
条件不成立之后执行的代码...
条件不成立之后执行的代码...
条件不成立之后执行的代码...
提示:统一缩进问题,一般情况下使用四个空格,或者使用tab会自动缩进四个空格
2. 多条件判断:
if 条件A:
A成立,执行此缩进中的所有代码
...
elif 条件B:
B成立,执行此缩进中的所有代码
...
elif 条件C:
C成立,执行此缩进中的所有代码
...
else:
上述ABC都不成立。
print("欢迎致电10086,我们提供了如下服务: 1.话费相关;2.业务办理;3.人工服务")
choice = input("请选择服务序号")
if choice == "1":
print("话费相关业务")
cost = input("查询话费请按1;交话费请按2")
if cost == "1":
print("查询话费余额为100")
elif cost == "2":
print("交互费")
else:
print("输入错误")
elif choice == "2":
print("业务办理")
elif choice == "3":
print("人工服务")
else:
print("序号输入错误")
3. 条件嵌套
if 条件A:
A成立,执行此缩进中的所有代码
...
elif 条件B:
B成立,执行此缩进中的所有代码
...
elif 条件C:
C成立,执行此缩进中的所有代码
...
else:
上述ABC都不成立。
print("欢迎致电10086,我们提供了如下服务: 1.话费相关;2.业务办理;3.人工服务")
choice = input("请选择服务序号")
if choice == "1":
print("话费相关业务")
cost = input("查询话费请按1;交话费请按2")
if cost == "1":
print("查询话费余额为100")
elif cost == "2":
print("交互费")
else:
print("输入错误")
elif choice == "2":
print("业务办理")
elif choice == "3":
print("人工服务")
else:
print("序号输入错误")