python1.1数据类型+变量+输入输出+if
1 编码
-
计算机本质存储的概念是二进制编码格式 也就是0000000111111
-
为了能够在操作系统上显示字母和特殊,制作了ASIIC字符编码,每一个字符所对应的二进制格式都是不同的
-
不同国家的语言制作了不同语言的字符编码所对应的二进制格式,操作系统才能显示不同的文字语言。
-
常见的字符编码是 UTF-8 GBK 等
-
保存文件时使用的UTF-8编码,那就打开文件时就要用UTF8编码打开,才能一一对应,否则乱码。
思考题:通过键盘输入的字母,以文件的形式保存在硬盘上后,这个经历了什么过程?
-
手动指定字符编码
# 指定代码的编码格式 # -*- coding=gbk -*-
1.print的功能
# print 的功能是打印输出的结果。
print("哈哈哈哈")
打印代码输出的结果
print("哈哈哈哈")
print("哈哈哈哈")
print("哈哈哈哈")
print("哈哈哈哈")
print("哈哈哈哈")
print("哈哈哈哈")
输出的结果'''
哈哈哈哈
哈哈哈哈
哈哈哈哈
哈哈哈哈
哈哈哈哈
'''
- 正常print的默认输出结果是带有换行符的 也就是 \n
- 如果想把输出的结果,排成一行,需要加上end=“”
print("哈哈哈哈",end="")
print("哈哈哈哈",end="")
print("哈哈哈哈",end="")
print("哈哈哈哈",end="")
print("哈哈哈哈",end="")
print("哈哈哈哈",end="")
输出的结果'''
哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈
'''
- 扩展
- print end=“” 代表不带任何结尾符
# \n 换行符
# \r 回车
for i in range(5):
print(i) # 输出的每一行的内容,默认是带换行符的
print(i,end="") #加上参数 end ,就是取消了 换行符的功能,那么输出的内容就在一行上面显示了
# print(aa,end="")
print练习题
-
使用print输出自己的姓名
print("stone") -
使用print输出
春眠不觉晓,
出处闻啼鸟,
夜来风雨声,
花落知多少。print("春眠不觉晓,") print("出处闻啼鸟,") print("夜来风雨声,") print("花落知多少。") -
是用print输出
春眠不觉晓,出处闻啼鸟,夜来风雨声,花落知多少。print("春眠不觉晓,",end="") print("出处闻啼鸟,",end="") print("夜来风雨声,",end="") print("花落知多少。",end="")
2 数据类型
2.1 数字
```python
1、数字类型
1、整形类型 int
作用: 记录个数 ,数值,年龄 月份 高 宽 游戏等级
2、浮点型 float 小数的意思
x = 1.1
作用是 记录 身高 体重
整型 和 浮点型 可以相互 运算
作用 : 数学运算 数值比较
```
-
表示常识性数字 数字一般就是运算
-
数字在代码中直接使用,整型数字 没有引号就是数字
-
作用 加减乘除等数字运算
print(123) print(123 + 456) print(123 - 111) print(55 * 2) # 乘法 print(2 ** 2) # 乘法 平方 print(100 / 2) # 除法 print(122 % 2) # 除法 取余数 地板除?? 取余数 测试奇偶的作用 res = 19 %2 print(res) 返回 0 就是偶数 返回 1 就是奇数 -
判断一个数值的属性
aa = 33 print(type(aa))
-
2.2 字符串
字符串的定义
-
必须用双引号 或者单引号 括起来 比如 "123" '123' '''123'''
-
变量 先定义 后使用。
-
变量的定义 Variable = "123"
# 字符串 (单双引号,都代表 字符串) aa = "33" print(type(aa)) aa = '33' print(type(aa)) -
三个引号代表是字符串
print('''aaaa''') print('''aaaa bbbb cccc ''') -
字符串的 加 和乘
字符串的加法 等于两个或者N个字符串的拼接 print("春眠不觉晓 " + "出处闻啼鸟 " + "夜来风雨声 " + "花落知多少 ") print("字符串的重复出现N次进行的拼接!"*3) print("字符串的重复出现N次进行的拼接!\n"*3) # 使用前面学到的 print的end参数 也可以添加换行符 print("字符串的重复出现N次进行的拼接!"*3,end="\n") 函数内执行3次 和函数执行3次,含义是不一样的。 -
字符串的分割使用
time = time.strftime('%Y:%m:%d:%H:%M:%S').split(":") # 使用split 以冒号为分割符,返回为一个列表 print(time) -
字符串的长度计算 len函数
str = "abcdefghij" print(len(str)) 结果: 10
2.3 布尔类型(bool)
True False
作用: 记录真假的两种状态
x = 10
any = 20
type(x==any)
print(type(x==any))
print(1>2)
print(1<2)
a=1
b=2
print(a>b)
print(a<b)
-
不同数据类型比较 只可以 比较是否等于 不可以进行大小比较
print(1 == 'aaa') print(1 > 'aaa')
3 数据类型的转换
- 整数使用int表示
- 字符串使用str表示
- 布尔使用bool 表示
- 不同数据的转换遵循一个原则:想转换什么类型就用什么类型包裹起来。
-
转换成整形
# 字符串数字转换成整形 print(int("666") + int("888")) a = "666" b = "888" print(int(a) + int(b)) print("666" + "999") # 字符串的相加是拼接了 # 字符串字符不能转换成整形 int 只能渡可度之人 # print(int("aaa")+int("bbb")) # 直接报错了 # 布尔类型转换成整形 print(int(False)) # 等于0 print(int(True)) # 等于1 -
转换成字符串
# 整形转字符串 print(str(11)+ str(12)) # 布尔转字符串 print(str(False)) print(str(True)) -
转换成布尔类型
# 整型转布尔 print(bool(0)) #除了0 转换成布尔后是False 其他整形全部是True print(bool(1)) print(bool(-1)) # 字符串转布尔 print(bool("")) # 除了空值转换成布尔后是False 其他字符串全部是True print(bool(" ")) # 空格也是True print(bool("a")) print(bool("**…………%%")) -
转换总结
- 其他类型转换成布尔 ,除了空字符串和0 ,其他都是True
- 字符串转换成整形,只有数字形式的字符串才可以转换
- 想要转换那种字符类型,就要类型关键字包裹
- 真-真等于真 假假等于真 真假=假
整型练习题
-
计算整型50乘以10再除以5的商并使用print输出。
print((50 *10) / 5) -
判断整型8是否大于10的结果并使用print输出。
print(8>10) -
计算整型30除以2得到的余数并使用print输出。
print(30%2) -
使用字符串乘法实现 把字符串”我爱我的祖国”创建三遍并拼接起来最终使用print输出。
print("我爱我的祖国"*3,end="") -
判断 字符串”wupeiqi”和”alex”是否相等的结果并使用print输出。
print("aaa"=="bbb") -
判断 整型666和整型666是否相等的结果并使用print输出。
print(666==666) -
判断 字符串”666”和整型666是否相等的结果并使用print输出。
print("666"==666) -
看代码写结果(禁止运行代码):
print( int("100")*3 ) 300 print( int("123") + int("88") ) 211 print( str(111) + str(222) ) "1112222" print( str(111)*3 ) "111111111" print( int("8") > 7 ) True print( str(111) == 111 ) False print( bool(-1) ) True print( bool(0) ) False print( bool("") ) False print( bool("你好") ) True print( True == True) True print( True == False) False print( bool("") == bool(0) ) True
注意:类型转换不是改变原来值,实际在底层是新创建了一个值。例如有整数 6 ,然后使用 str(6) 转化了一下得到 “6”,实际上这个字符串”6”是依据整数6新创建的。
5 变量
说变量的概念必须要说变量的载体是硬件存储设备 内存
- 什么是变量
- 为什么要有变量
- 怎么用变量
一、什么是变量?
记录事物的状态,并且状态是可以变化的
使用变量名绑定一个内存地址,把数据存到内存地址所在的存储空间内
存储空间的模型 = 数据存放的形式= 人为定义的类型,被语法所识别。
二 、为什么要有变量
为了让计算机能够像人一样记忆事物的状态,并且状态是可以变化的
python中的数据类型有以下几个类型
字符串 str
数字 int
列表 list
字典 dict
不同的数据类型有不同的存放数据结构
三、怎么用变量
- 变量定义的3个组成部分
- 变量名 管理一个房间的地址,用来找到变量值得
- 赋值符号 把房间的地址绑定给变量名
- 变量值 就是 我们记忆的状态或者数据
1 变量名的命令规范
- 2.1大前提 变量名的规范应该是见名知意
- 2.2 规范: 字母 数字 下划线 组成 (单纯的 特殊字符也可以当做变量名使用)
- 2.3不能以数字开头
- 2.4 不能以python的关键字命名 ,python 关键字使用wordkey 函数 可以显示
import keyword
print(keyword.kwlist)
['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']
变量名的命名风格
(1)纯小写+下划线(变量名推荐)
age_of_oldboy = 73
(2)驼峰体
AgeOfOldboy = 73
常量的概念
1、python中没有常量的概念 使用驼峰写法 定义常量
GuessDang = 22 #数字类型
GuessDang = "22" # 字符串类型
- 变量名在等号的左边代表 ,代表赋值操作
- 变量名只要不在等号的左边代表 ,代表取值值操作
赋值操作
age = 20
取值操作
res = age + 1
print(res)
age 没有关联到内存地
语法上没有错误 逻辑上错误
引用变量值
print(name)

变量值得两大特征
# 变量的ID 相等 ,变量的值一定相等
# 变量的值 相等,,ID可能相等,也可能不相等
id 反应的是内存的地址
# (1) id:反映的是内存地址
# x=10
# y=x
# y="aaaa"
#
# print(id(x))
# print(id(y))
# is判断的是id是否相等
# 例1
# x=1111
# y=2222
# print(x is y)
# 例2
# x=1111
# y=x
# print(x is y)
# ==判断的是值是否相等
# name1="egon"
# name2="egon"
# print(name1 == name2)
# 强调1:id如果相等,值一定相等
# 强调2:id如果不相等,值有可能相等
重复定义变量名,更改内存地址ID
aa = "33"
aa = "44"
print "aa"
打印变量aa的内容
type 事物状态的不同的值的表达方式
x=10
print(type(x))
name="egon"
print(type(name))
2 变量的各种使用
使用场景:怎么查看数据的类型
print(type(a))
使用场景:怎么查看变量的指向的地址是否一样
a = 10
b = a
print(a+b)
使用场景:怎么查看变量id
aa =10
bb =11
print(aa is bb)
使用场景:变量的读操作:
aa = "33"
print "aa"
# 打印变量aa的内容
使用场景:打印两个变量名的内容,用一个print打印出来
a="aaaa"
b= "bbbb"
print(a,b) # 使用 , 逗号分隔输出内容,有一个空格 aaa bbb
print(a+b) # 使用 + ,输出中没有空格。 aaabbb
3 常量的概念
1、python中没有常量的概念 使用驼峰写法 定义常量
GuessDang = 22 #数字类型
GuessDang = "22" # 字符串类型
6 注释的使用
单行注释规范的写法 对不想运行的代码,暂时取消代码运行
print("hell ") # 这个是显示hell
多行注释 通常在代码的第一行,对整个文件的解释说明
'''
这个程序是爬虫功能
'''
7 输入
input 函数配合变量格式化输出的使用
输入函数 input , 在交互式中输入的值 要赋值给变量名 ,任何输入的值都是str 字符串的类型
- strip() 函数的作用是删除输入数据 字符头 和字符尾空格使用的。
- lstrip() 只删除头部空格
- rstrip() 只删除尾部空格
代码
name = input("ple key name :").strip()
print(name)
8 if 语句
分支控制,根据条件判断走哪条路而已
- 语法形式 单条件判断 和多条件判断
if 判断的完整语法
缩进同样空格数的代码 为 代码块
if 条件: # 碰到冒号缩进4个空格
if 条件1:
代码1
代码2
elif条件2:
代码1
代码2
else:
代码1
代码2
含有多个代码块的,但是只能执行一个代码块
- 判断的语句 if
# 1、单步判断:
_name = "aaa"
_password = "123456"
name = input("name:")
password = input("password:")
if name == _name and password == _password:
print("wellcome {name} login .".format(name=name))
else:
print("error name or password")
1、重复判断:
GuessDang = "22"
guess = input("guess_dang : ")
if guess == GuessDang:
print("you very good!")
elif guess > GuessDang:
print("you key big!")
else:
print("you key small")
- 添加了数据类型的转换
如果给常量 取消了“” 双引号,那么必须要给你输入的数字
强制转换成 int 整数。
GuessDang = 22
guess = int(input("guess_dang : "))
if guess == GuessDang:
print("you very good!")
elif guess > GuessDang:
print("you key big!")
else:
print("you key small")
# 成绩 90分以上 显示优秀
# 成绩 大于 等于80分 小于90 显示良好
# 成绩 大于等于 60 小于80 显示及格
# 成绩 小于60 显示 不及格
num_ber = input("请输入你的成绩分数:")
num_ber = int(num_ber)
if num_ber >89:
print("优秀")
elif num_ber > 79:
print("良好")
elif num_ber > 69:
print("及格")
else:
print("不及格")
应用
# 写一个判断 输入的用户名和密码是否正确的逻辑关系
username = "zhangsan"
password = "123456"
_username = input("username:")
_password = input("password:")
if _username == _username and _password == password:
print("Welcome user {name} login ...".format(name=_username))
else:
print("Error!! please input again")
if 练习题
提示用户输入用户名和密码,用户名等于 stone 且密码等于 aaa 就输出登陆成功 ,否则输出登陆失败
uesr = "stone"
password = "aaa"
key_user = input("please key you are name:")
key_password = input("please key you are password:")
if key_user== uesr and key_password == password:
print(key_user+" 欢迎登陆!")
else:
print("用户或者密码错误")
猜数字,提示用户输入一个数字,判断数字如果大于10 就输出猜错了,否则输出才对了
number = 10
key_number = input("Please key number:")
if int(key_number) > number:
print("猜对了")
else:
print("猜错了")
提示用户输入一个数字,判断是否为偶数,是偶数则输出 偶偶数 ,否则输出 奇奇奇数
key_number = input("Please key number")
if (int(key_number) %2) >0:
print("奇奇数")
else:
print("偶偶数")
if 条件嵌套
if 条件1:
if 条件1:
....
else:
...
else:
if 条件1:
....
else:
...
课程总结
1、编码的的内容
- 字符编码是人和计算机沟通的一种文字翻译表,其中ASCII表最为通用的
- 常用字符编码 包括 gbk utf8 等等
- 文件以utf8编码保存,打开文件必须也utf8编码打开 否则是乱码
- 在python 代码中 # -- coding=utf-8 -- 指定字符编码
2、 print打印函数
- 功能是 输出结果打印到屏幕上。
- print 默认结束是换行 \n
- end="" 空值代表 不换行
- end=“\r” 代表回车
3、 数字类型
- 表达数量的数据类型
- 有整型 int 和浮点类型float
- 主要是 + - * / % 取余数
4、字符串
- str代表 ,用双引号 或者单引号 包裹
- 可以进行字符串拼接 和字符串相乘
5、布尔类型 bool
- 作为判断使用
- 只有True False 两种状态
6、数据类型转换
- 数字转字符 str(123)
- 字符转数字 int("123") 只能转数字形式的字符串,其他不能转换
- 数字转布尔 bool(0)是False 其他都是True 字符串转布尔 bool("") 空值是False其他都是Ture
- “666” == 666 等于false Ture == False 等于False
7、变量
- 变量定义表示事物的状态的载体,且状态是可变化的
- 变量命名规范 1、见面知意 2、不能使用关键字 不能以数字 特殊字符开头 3、以小写字符加下划线命令 或者驼峰体
- 变量名 赋值符号 变量值 ,变量名只要不在赋值符号左边,就是取值操作。
- 变量的id相等 ,变量值一定相等,变量的值相等,变量的id 可能相等,也可能不相等
8、 if判断
-
单循环判断 和嵌套循环判断
-
缩进统一是4个空格
浙公网安备 33010602011771号