Python基础
标签:string 字符串类 python 数字类型 input 垃圾回收机制 class 循环 tin
一、执行Python程序的两种方式
1 交互式
在终端内输入python3,然后输入python代码
2 命令行式
在终端内输入python3 文本文件路径
二、变量
1、变量的组成
变量名 = 变量值
name = ‘nick‘ age = 19
变量名是用来接收变量值的
2、变量名的定义规范
- 变量名具有某种意义
- 由数字/字母/下划线组成,且不能由数字开头,(也不能由下划线开头)
- 不能用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‘]
3、定义变量的两种方式
- 驼峰体:
NameOfNick
- 下划线:
name_of_nick
(推荐)
4、常量
常量是约定俗成的一种规范,常量名的定义方式为全大写。实际上可以被修改。
AGE_OF_NICK = 19
print(AGE_OF_NICK)
三、Python变量内存管理
1、引用计数
变量值的引用次数
x = 257 # 257的引用计数为1 y = x # 257的引用计数为2 del x # 257的引用计数为1
2、垃圾回收机制
当变量值的引用计数为0的时候,该变量值会被Python自动回收它的内存占用
3、小整数池
[-5,256]之间的整数会在Python解释器启动的时候,自动开辟一块内存存入这些整数.也就是说这些整数不会因为引用计数为0而被删除。
4、内存地址与数据类型
x = 10 print(x) # 获取变量的变量值 print(id(x)) # 获取变量的id,可以理解成变量在内存中的地址 print(type(x)) # 获取变量的数据类型,下章会详细介绍数据类型
结果:
10
8790885504960
<class ‘int‘>
5、实例:
id相等的变量,值一定相等,指向的是同一个内存地址;值相等的变量,id不一定相等。
x = 11 y = x z = 11 print(x == y) # True print(x is y) # True print(x is z) # True,整数池的原因 x = 255 z = 255 print(id(x) is id(z)) # False
四、花式赋值
1 链式赋值
a = b = c = d = 10 print(f‘a:{a}, b:{b}, c:{c}, d:{d}‘) #a:10, b:10, c:10, d:10
2 交叉赋值
# 交叉赋值 x = 10 y = 20 x, y = y, x print(x, y) #20 10 # 使用临时变量 x = 10 y = 20 temp = x x = y y = temp print(x, y) #20 10
五、与用户交互
name = input(‘请输入你的姓名:‘) pwd = input(‘请输入你的密码:‘) print(type(name)) print(type(pwd))
无论我们输入的值是数字类型、字符串类型、列表类型,input的接收值都是字符串类型。
六、格式化输出
1 占位符
%s接收任意数据类型的数据
%d接收数字类型的数据
name = ‘nick‘ age = 19 print(‘my name is %s my age is %d‘ % (name, age))
2 format格式化
{}接收任意数据类型的数据
name = ‘nick‘ age = 19 print("Hello, {}. You are {}.".format(name, age))#Hello, nick. You are 19. print("Hello, {1}. You are {0}-{0}.".format(age, name))#Hello, nick. You are 19-19.
print("Hello, {name}. You are {age}-{age}.".format(age=age, name=name))#Hello, nick. You are 19-19.
3 f-string格式化
在字符串前面加上f或F,然后使用{}接收任意数据类型的数据
name = "nick" age = 19 print(F"Hello, {name}. You are {age}.")#Hello, nick. You are 19. print(f‘{age*2}‘)#38
salary = 6.6666 print(f‘{salary:.2f}‘)#6.67
七、基本运算符
1 算术运算符
- * / % // **
# 地板除,只取整数部分 print(10 // 3) # 3 print(10 // 4) # 2 # %:取余 print(10 % 3) # 1 # **,幂 print(10 ** 3) # 1000
2 逻辑运算符
and or not
# 从左到右的方式找到逻辑运算符,找到逻辑运算符的左边,左边成立,再去找到逻辑运算符的右边 print(3 > 3 and 1 > 2 or 2 > 1) # False
3 比较运算符
> >= < <= == !=
4 赋值运算符
= = -= *= /= //= **= %=
5 身份运算符,比较两个对象的存储单元。
is、 is not
is和==的区别:is用于判断两个变量引用对象是否为同一个(是否在同一块内存空间中), ==用于判断引用变量的值是否相等。
- id相同的值一定相同,值相同的id不一定相同
6 位运算符
a = 60 # 60 = 0011 1100 b = 13 # 13 = 0000 1101 c = 0 c = a & b print( c)# 12 = 0000 1100 c = a | b print(c)# 61 = 0011 1101 c = a ^ b print( c)# 49 = 0011 0001 c = ~a print( c)# -61 = 1100 0011 c = a << 2 print(c)# 240 = 1111 0000 c = a >> 2 print(c)# 15 = 0000 1111
7 成员运算符
in、 not in
a = 10 b = 20 list = [1, 2, 3, 4, 5] print(a in list) # false
8 运算符优先级(略)
如果需要某个运算符优先运算,则加个括号,使用a and b is c == d
的是傻逼
9 解压缩
hobby_list = [‘read‘,‘run‘,‘sleep‘,‘fishing‘,‘piao‘] # 如果取第2-3个爱好 _,hobby2,hobby3,*_ = hobby_list print(hobby2, hobby3) #run sleep
字典也是可以的,但是字典解压缩的是key。
info = {‘name‘: ‘nick‘, ‘age‘: 18} x, y = info print(x, y) #name age
八、流程控制
1 if判断
# if if 条件: 代码块 # if...else if 条件: 代码块 else: 代码块 # if...elif....elif...else if 条件: 代码块 elif 条件: 代码块 elif 条件: 代码块 ...(可以写任意个elif) else: 代码块
2 while循环
#while while 条件: 代码块 #while break while 条件: 代码块 break # 结束本层循环,跳出循环 # while continue while 条件: 代码块 if 条件: 代码块 cotinue # 不执行下面代码,然后继续循环,即跳出本次循环 代码块 #while else while 条件: 代码块 else: print(‘如果我没有被break,我就会被打印出来‘)
实例:
实例:
n = 1 while n < 4: print(n) n = 1 else: print("a") #1,2,3,a
3 流程控制之for循环
for循环的循环次数受限于容器类型的长度,而while循环的循环次数需要自己控制。
#for for i in range/str/list/tuple/dict/set(可迭代对象): print(i) #for break for i in range/str/list/tuple/dict/set(可迭代对象): print(i) break # 结束本层循环 # for continue for i in range/str/list/tuple/dict/set(可迭代对象): print(i) if 条件: continue # 结束本次循环,即不执行下面代码,继续循环 代码块 #for else for i in range/str/list/tuple/dict/set(可迭代对象): print(i) else: print(‘如果我没有被break,我就会被打印出来‘)
实例:
# for循环按照索引取值 name_list = [‘nick‘, ‘jason‘, ‘tank‘, ‘sean‘] for i in range(len(name_list)): print(i, name_list[i])
Python基础
标签:string 字符串类 python 数字类型 input 垃圾回收机制 class 循环 tin
温馨提示: 本文由杰米博客推荐,转载请保留链接: https://www.jmwww.net/file/biancheng/12243.html
- 上一篇:python基础学习(八)
- 下一篇:PHP 将字符串中的数字转化为数组