lyz666

编写py程序的两种方式

1.cmd窗口
2.编辑环境
pycharm
vscode
sublime
编程环境的选择

pycharm
变量与常量

1.变量的定义(底层逻辑)
变量名 赋值符号 变量值

2.变量名的命名规范
数字 字母 下划线的组合
数字不能开头 下划线尽量不要用(后续有特殊含义)
不能与关键字冲突
\'\'\'变量名一定要做到见名知意\'\'\'

3.变量名的命名风格
1.下划线式(python推荐使用)
user_name = \'jason\'
2.驼峰体(js推荐使用)
大驼峰
UserName = \'jason\'
小驼峰
userName = \'jason\'

4.python中没有严格意义上的常量 默认使用全大写的变量名作为常量
全大写的变量名主要用在配置文件
# ps:在其他编程语言中有真正的常量
垃圾回收机制

引用计数
标记清除
分代回收
python基本数据类型

整型int
age = 18
浮点型float
salary = 1.1
字符串str
引号引起来的部分 描述性 文本
name = \'jason\'
name1 = "jason"
name2 = """jason"""
name3 = \'\'\'jason\'\'\'
# 三引号还可以用来表示注释
列表list
中括号括起来 内部可以存放多个元素
元素与元素之间都好隔开 元素可以是任意数据类型
[1, \'jason\', [1,2,3,4]]
字典dict
大括号括起来 内部可以存放多个元素
元素的表现形式是k:v键值对
k一般是对v的描述性信息
v可以是任意数据类型
{\'username\':\'jason\',\'password\':123}
布尔值bool
True False
"""
当变量名存储的值是布尔值的情况下
那么变量名一般都是以is开头
is_delete
is_right
is_status
"""

与用户交互

与程序实现沟通交流
格式化输出

基本运算符

数学运算符
赋值运算符
逻辑运算符
比较运算符
增量运算符
链式运算符
...
流程控制

if判断

while循环

for循环

与用户交互
输入
input
# python2与python3的区别

\'\'\'python3\'\'\'
# 将获取到的用户输入赋值给变量名res
res = input(\'please input your username>>>:\')
print(res, type(res))  # id返回一串数字(可以看成是内存地址)  type返回变量值的数据类型
\'\'\'input获取到的用户输入都会存成字符串形式\'\'\'

\'\'\'python2\'\'\'
input需要用户自己人为的指定输入的数据类型
    \'jason\' [1,2,3,4]
 
raw_input等价于python3里面的input

输出
print
1.先写print
print(\'jason\')
2.先写待打印的内容
\'jason\'.print # tab键即可
格式化输出

my name is 用户输入的用户名 my age is 用户输入的年龄

1.获取用户的用户名和密码

name = input(\'username>>>:\')

age = input(\'age>>>:\')

2.打印规定的文本内容

print(\'my name is\', name, \'my age is\', age)

格式化输出

提前定义文本模板

tmp = \'my name is %s my age is %s\'

"""
%s是一个占位符 后续传值替换即可
"""

name = input(\'username>>>:\')

age = input(\'age>>>:\')

print(tmp % (name, age)) # 按照先后顺序一一传值

print(\'my name is %s my age is %s\' % (\'jason\')) # 少了不行

print(\'my name is %s my age is %s\' % (\'jason\',123,12)) # 多了也不行


"""
%d也是一个占位符 只能给数字占位
"""

print(\'my name is %s my age is %s\'%(\'jason\',\'123\') )

print(\'my name is %s my age is %d\'%(\'jason\',123) )


print(\'%08d\'%123)
print(\'%08d\'%213213213213)
运算符

1.赋值运算符
name = \'jason\'
# 先看右边再看左边
2.算术运算符
+ 加
- 减
* 乘
/ 除
// 整除
% 取余
** 幂指数
print(1 - 1)
print(1 * 10)
print(10 / 2)
print(10 // 3)
print(10 % 3)
print(2 ** 4)
# python语言对数字的精确的其实并不是很高 需要借助于\'大佬\'辅助
# 其他数据类型也可以使用局部的数学运算符
print(\'hello\' + \'world\') # 字符串拼接
print(\'hello\'*2) # 字符串复制
3.增量赋值
x = 1
x = x + 1 # 等价于 x += 1
print(x)

x -= 1  # x = x - 1
x *= 1  # x = x * 1
x /= 1  # x = x / 1
...


4.链式赋值
# x y z 10
# x = 10
# y = x
# z = x
# 链式赋值
x = y = z = 10

5.交叉赋值(面试题可能会出)
x = 10
y = 999
# 将x与y对调指向
# x = y
# y = x
# print(x,y)

# 方式1 中间变量
# z = x
# x = y
# y = z
# print(x,y)
# 交叉赋值
x, y = y, x
print(x, y)

6.解压赋值
# name_list = [\'jason\',\'egon\',\'tony\',\'kevin\']
# name1 = name_list[0]
# name2 = name_list[1]
# name3 = name_list[2]
# name4 = name_list[3]
# print(name1,name2,name3,name4)
# 解压赋值
# name1, name2, name3, name4 = name_list # 按照位置一一对应赋值
# print(name1, name2, name3, name4)

# name1, name2, name3 = name_list # 少了不行
# name1, name2, name3, name4, name5 = name_list # 多了不行

# 可以打破个数必须相等的情况
l = [11, 22, 33, 44, 55, 66, 77, 88, 99]
a, b, *_, c = l
print(a, b, , c)
a, b, *
= l
print(a, b, )
"""
*
下划线表示接收到的数据无需使用
"""

7.比较运算符
> < >= <= == !=
print(10 > 2)
print(2 == 2)
print(3 != 4)

# 补充
print(\'hello\' > \'world\')
"""
字母内部对应着数字
A-Z 65-90
a-z 97-122
"""
print([1,2,3] > [0,1,2,3,4,5,6,7,8,9])

8.逻辑运算符
与 and
连接多个条件 条件必须都成立
或 or
连接多个条件 一个成立就可以
非 not
取反
print(True and False and 8)
print(True or False or 8 )
print(not True)
# 布尔值为False: 0 None \'\' [] {} (重要)
"""
三者混合使用是存在优先级的
但是我们在混合使用的时候不应该考虑优先级
通过加括号的形式来明确优先级

分类:

技术点:

相关文章: