变量
1、什么是变量
变指的是记录的状态是可以发生变化的
量是衡量/记录现实世界中的某种特征/状态
2、为什么要用变量
是为了让计算机能够像人一样去将一个事物的特征/状态记忆下来(存到计算机内存)以后可以取出来使用
3、如何用变量
定义变量的语法
age=18
变量名:相当于一个门牌号,是访问到值的唯一方式
=:赋值符号是将值的内存地址绑定给变量名age
值:用来表示状态的 变量的使用:通过变量名用 print(age)
总结:变量的使用规则:先定义,再通过变量名去引用
4.变量的命名规则
变量名定义的规则:(7条)
(1)变量名只能是 字母 数字 下划线 任意组成.
(2)变量名的第一个字母不能是数字.
(3)变量名禁止以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']
(4)变量名建议不使用中文和拼音.
(5)变量名要具有意义.(通过变量名能大概反映出其具体的用途,例如sum 总数)
(6)变量名要区分大小写.
(7)变量名推荐写法:
.驼峰体:大驼峰 MeetTheGirl 小驼峰 meetTheGirl(第一个单词首字母小写)
(补)变量名不能过长
注释
1.单行(当行)注释 # name = 'aaaa'
2.多行注释
'''
name = 'aaaa'
name = 'aaaa'
name = 'aaaa'
'''
或
"""
name = 'aaaa'
name = 'aaaa'
name = 'aaaa'
"""
程序交互
1)name = input('请输入你的名字')
注意:用input获取到的内容都是字符串
2)type() 查看数据类型
例:
name = input('请输入你的名字')
输入111
print(type(name))
结果 <class 'str'>字符串型
其他用法
if type(name)== str:
这个条件是成立的
密码隐藏:
import getpass
user = input("请输入用户名:")
pwd = getpass.getpass("请输入密码:")
print(user,pwd)
格式化输出 (3种方法)
--------- info of xiaowang ------
Name : xiaowang
Age : 22
job : Teacher
Hobbie: girl
------------ end ----------------
1)用%占位
%d 和 %i 都是替代整型数据的
%s 替代字符串
name = input("请输入姓名")
age = input("请输入年龄")
job = input("请输入职业")
hobbie = input("请输入爱好")
print('''
------------ info of %s ----------
Name : %s
Age : %d
job : %s
Hobbie: %s
------------- end ----------------
'''%(name,age,job,hobbie)) (多个元素,%(),如果就一个元素直接%元素,例如%name)
(注意位置和数量)
2)用f('{}')
name = input("请输入姓名")
age = input("请输入年龄")
job = input("请输入职业")
hobbie = input("请输入爱好")
print(f'''
------------ info of {name} ----------
Name : {name}
Age : {age}
job : {job}
Hobbie: {hobbie}
------------- end ----------------
''')
3)用字符串的format方法({1}中可以以数字指定位置)
name = input("请输入姓名")
age = input("请输入年龄")
job = input("请输入职业")
hobbie = input("请输入爱好")
print('''
------------ info of {} ----------
Name : {}
Age : {}
job : {}
Hobbie: {}
------------- end ----------------
'''.format(name,name,age,job,hobbie))
(注意位置和数量)
if循环
if条件语句 (5种结构)
if 为关键字
1)if 条件:
(缩进)代码块
2)if 条件:
print(3)
else:
print(4)
3)if 条件:
代码块
elif 条件:
代码块
elif 条件:
代码块
elif 条件:
代码块
4)if 条件:
代码块
elif 条件:
代码块
elif 条件:
代码块
elif 条件:
代码块
else:
代码块
5)if 嵌套
if 条件:
if 条件:
代码块
else:
代码块
else:
代码块
while循环
while循环(条件一直满足就会永远循环下去)(4种结构)
while --- 关键字
1)while 条件:
缩进代码块(循环体)
2)while 条件:
缩进代码块(循环体)
else:
缩进代码块
3)while 条件:
缩进代码块
break
(break跳出循环,结束循环)
4)while 条件:
缩进代码块
continue
(continue结束本次循环,继续下次循环)
运算符(5种,算数运算符,比较运算符,赋值运算符,逻辑运算符,成员运算符)
1)算数运算符
a + b # 加
b - a # 减
b * a # 乘
b / a # 除(有小数点)
b % a # 取膜
b ** a # 幂 (几次方)
b // a # 整除(没有小数点)
2)比较运算符
a = 10
b = 20
b > a # 大于
b < a # 小于
b >= a # 大于等于
b <= a # 小于等于
b == a # 等于
b != a # 不等于
结果为 布尔值 True 或者False
3)赋值运算符
a = 10 # a就是10
# a += 10 # a = a + 10 就是在自己的身上在就上一个自己
# print(a)
# a -= 10
# print(a) # a = a - 10
# a *= 10 # a = a * 10
# print(a)
# a /= 10 # a = a / 10
# print(a)
# a **= 10 # a = a ** 10
# print(a)
# a //= 10 # a = a // 10
# print(a)
# a %= 10 # a = a % 10
# print(a)
4)逻辑运算符
与 或 非
and or not 优先级not>and>or
and (同真为真,有假为假,同真取后,同假取前)
or (有真则真,同真取前,同假取后)
not(取相反的)
# if 3 > 2 and 5 > 9: # and 两边的条件都为真的时候才是真
# if 3 > 2 or 5 > 9: # or 两边的条件只要有一个为真就是真
# if not 3 > 5: # not 只要碰到真的就是假的,碰到假的就是真的 (总结:对着干)
print(6 and 16)
# 数字做and运算
# and前后的数字不为0的时候 1 and 2 == 2
0 and 2 == 0
# 取and后边的数字,否则取0 2 and 0 == 0
# print(0 or 0) 0 and False == 0
# 两边同为假时取前边的. False and 0 == False
# 数字做or运算 1 or 2 == 1
# or前后的数字不为0的时候取or前面的数字, 0 or 1 == 1
# 否则有0的时候取非0 1 or 0 == 1
#两边同为0取后边的那个 False or 0 == 0
# print(0 or 0) 0 or False == False
# 优先级()> not > and > or
# print(3 and 9 or 5 and 0 or 5 or 7)
# 9 or 0 or 5 or 7
# print(False and 0)
5)成员运算符
in 存在
not in 不存在
print(6 and 16)
# in # 在
#
# not in # 不在
# s = '黑哥'
#
# ss = input("请输入内容:")
#
# if s not in ss: # '黑哥黑了'
# print(1)
# 如果SS在S中输出1
6)运算符优先级
幂运算(*)>正负号(+ - )>算数运算符( / // + - )比较运算符(< <= > >= == !=)>逻辑运算符 (not and or)
初识编码
ascii码 不支持中文
python2 默认编码是 ascii码
unicode 万国码 16位(2字节) 中文32位4字节 a你
utf-8 最少使用8位(1字节)英文1字节 欧洲 16位(2字节) 亚洲 24位(3字节)
utf-16 最少使用16位(2个字节)
gbk(国标 国家标准)
gbk 中文 2个字节
英文 1个字节
8(bit)位 == 1(byte)字节
基础类型
1.数字型(int整型,float浮点型):用于比较和计算
34 + 56 加
34.0+56.8=90.8 加
56 - 34 减
34 * 56 乘
56 / 34 除 py3 结果为长整型
56 > 34 比较
# n = 56
print(n.bit_length()) 查看位数
0011 1000
128 64 32 16 8 4 2 1
python2 中有长整形 long 浪
python3 中全都是整型
布尔值 bool
True False
print(3>2)
print(3<2)
n = bool(6) # True 数字和布尔值可以进行转换
# print(n)
s = bool(-1) # True 数字和布尔值可以进行转换
print(s)
s1 = bool(0) # False 数字和布尔值可以进行转换
print(s1)
在数字转换成布尔值的时候只有0是False 其余的都是True
n = int(True) # True 1
print(n)
n = int(False) # False 0
print(n)
2)str字符串型
区别
python2 字节 str #py2 中
python2 字符串 unicode
python3 字节 bytes
python3 字符串 str
在python中只要使用引号引起来的都是字符串
"name" 'name' "1" '1' """name"""
3)bool布尔型
bool 布尔值
True 真
False 假
4)转换
字符串转整型int()
num = int('8') # 通过int()把字符串8转成数字8 转换的内容必须是'数字'
num = int('s') #报错不能运行
整型转字符串str()
s = str(8) #通过str()把数字8转换成字符串8
整型转布尔值
print(bool(1)) 结果True
print(bool(0)) 结果False
字符串转布尔值
print(bool('s')) 结果True
print(bool('')) 结果False (注意这里是''空字符,不是空格' ')
网友评论