1.python基础知识点1
@TOC
各位小伙伴想要博客相关资料的话关注公众号:chuanyeTry即可领取相关资料!
1.文档工具
文档都要用 markdown
语法
2.环境搭建
学习Python的话,本质上就需要的做的是三个步骤:
-
把解释器在自己电脑上安装成功。
-
学习Python的语法并编写代码。
print("hello world")
- 用 解释器运行写的代码。
2.1 安装解释器(软件)
python官网[[https://python.org/]]
下载python并进行安装。
1.关于下载版本:https://www.python.org/downloads/(建议:3.9.0)
注意:不要含中文的路径。
2.2 安装目录
安装目录: C:\Python39\
C:\Python39
- python.exe 就是我们的解释器。
- Scripts
- pip.exe 帮助我们以后安装第三方包。
- Lib Python内置的源码
- 文件/文件夹 Python提供的内置功能
- site-packages 通过pip去安装第三方的包时,他就会放在这个目录。
2.3 Python解释器
如果想要使用Python解释器,就必须在终端上进行操作。
-
交互式,不常用。
-
文件形式。
1.假设在自己的 F:\code.py 创建了一个文件。 2.在文件中写了点代码。 3.运行代码 C:\Python39\python.exe F:\code.py
2.4 环境变量(添加环境变量)
3.IDE
IDE,集成开发环境(快速编写代码并运行代码),在Python开发中最常用的IDE就是:Pycharm 。
3.1 创建项目(文件夹)
在设置中存放python解释器位置
4.Python语法
4.1 编码
UTF-8
以后在写文件时,一定要记住自己文件保存时,用的是什么编码?以后再打开这个文件时,就需要用同样的编码去打开,否则,就会出现乱码的情况。
在Python开发过程中这种规则依然要遵循:
- 在文件中写python代码(我们以后要以utf-8编码去保存代码)。
4.2 输出
让程序在内部帮助我们做事,做完事之后将结果输出出来。
print("你好呀")
- 输出的基本用法
print("郭德纲")
# 默认换行,尾部自动加换行符
- 不要换行
print("伤情最是晚凉天", end="")
print("憔悴私人不堪言", end="")
# end=""直接拼接两句
4.3 数据类型
4.3.1 整型(int)
19
300 + 19
2 * 6
80 - 77
100 / 10
98 % 10(求余数)
print(19)
print(300 + 19 )//也可以这样输出319
print(20)
4.3.2 字符串(str)
用来表示我们生活中的本文信息,例如:“李北斗” “中国北京昌平区”
python中单引号双引号不敏感,以下都属于字符串
# 单行文本
"张三"
'张三'
# 多行文本,可以写多行
"""李四"""
'''李四'''
'''xq
s'''
字符串之间可以进行相加,就是字符串拼接。只能字符串之间进行拼接
"张三" + "yyds"
"张三yyds"
字符串和数字相乘,等到的就是让字符串重复多少次。
"毛谦" * 3
"毛谦毛谦毛谦"
"xqs" * 3
"xqsxqsxqs"//不是带三个引号
转换
str(19) # 19 -> "19" 转成字符串str(17)--->"17"
int("88") # "88" -> 88 转成整型int("20")---->20
int("联通") # 无法转换,报错
4.3.3 布尔类型(bool)
- 真 True
- 假 False
1 > 2 -> False
1 == 2 -> False
"张三" == "李四" -> False
22 == 22 -> True
整型、字符串类型 -> 布尔值。//一般将str,int—>bool
- 整型, 0转换为布尔值为False,其他均为True
print( bool(0) ) # False
print( bool(-1) ) # True
print( bool(100) ) # True
- 字符串,空字符串转换为布尔值为False,其他均为True
print( bool("") ) # False
print( bool(“s”) ) # True
print( bool(" ") ) # True空格为True
## 4.4 变量
变量,就是我们给某个值取名称/外号。
>格式:`变量名 = 值`
```python
addr = "中国北京市昌平区沙河镇xxx1号楼"
print(addr)//"中国北京市昌平区沙河镇xxx1号楼"
age = 18
name = "张三"
is_success = 1 > 19 # False //is = 1>10--->False
addr = "中国北京" + "沙河"
address = "中国北京" + "海淀区" + name # "中国北京海淀区张三"
4.4.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’]
4.5 注释
让Python解释器看到之后,自动忽略的代码。
- 单行注释
// 注释内容
快捷键:
- win:control + ?
- mac:commond + ?
- 多行注释
"""
注释的内容
...
..
"""
4.6 输入
为什么要有输入呢?
input输入默认为字符串形式赋值给变量
text = input("提示信息")
print(text)
# 显示"提示信息",后输入数字按回车
name = input("请输入姓名:")
age = input("请输入年龄:")
email = input("请输入邮箱:")
text = "我叫" + name + ",今年" + age + "岁,我的邮箱是" + email + "。"
print(text)
5.条件语句-if
5.1 基本条件
if 条件:
pass
else:
pass
username = input(">>>")
password = input(">>>")
if username == "admin" and password == "123":
print("成功")
else:
print("失败")
5.2 多条件
if 条件A:
条件A成立,。。
elif 条件B:
条件A不成立,条件B
elif 条件C:
C成立
else:
上述都不成立
提示:所有的条件中的else可以省略。
if True:
pass
if 条件A:
pass
elif 条件B:
pass
5.3 嵌套
if 条件A:
if 条件:
if xx:
pass
else:
pass
else:
pass
elif 条件B:
pass
6.条件语句-while
print("开始")
while 条件 :
...//不停的判断条件a,不断地执行
print("结束")
6.1 循环基本使用
print("开始")
num = 1
while num < 3:
print("123")
num = num + 1 # num=2 num=3
print("结束")
# 输出
开始
123
123
结束
6.2 break
break不能自己独立使用,只能放在循环的内部。
break,立即终止循环(从循环中跳出来)
print("开始")
while True:
print("中国联通")
break
print(123)
print("结束")
# 输出
开始
中国联通
结束
6.3 continue
continue不能自己独立使用,只能放在循环的内部。
continue,立即结束当前循环,开始下次循环。
7.字符串格式化
7.1 format(推荐)
a = “我叫{0},你是{1}。”.format(“xqs”,人)
text = "我的名字叫{0}今年{1}岁".format("xqs",18)
print(text) # "我的名字叫xqs今年18岁"
按照顺序
text = "我的名字叫{0}今年{1}岁,就是{0}".format("xqs",18)
print(text) # "我的名字叫xqs今年18岁,就是xqs"
默认顺序
text = "我的名字叫{}今年{}岁,就是{}".format("xqs",18,"xqs")
print(text)//如果没有写序号,按照顺序
tpl = "我的名字叫{},今年{}岁。"
v1 = tpl.format("xqs",18) # 我的名字叫xqs,今年18岁。
v2 = tpl.format("张三",17) # 我的名字叫张三,今年17岁。
注意:
text = "我的名字叫{n1}今年{xx}岁,就是{p2}".format(n1="张三",p2=18,xx="张三")
print(text)
7.2 %// %s字符串,%d为整型
text = "我的名字叫%s今年%d岁" %("张三",18)//空格不能忘
a = "1234%s568%d" %("1",2)
a %("1",2)
a %("2",3)
print(text) # "我的名字叫张三今年18岁"
7.3 f-string
name = "张三"
age = 18
text = f"我的名字{name},今年{age}岁"//里面加变量名
a = f"1223{name},{age}"
print(text)
8.运算符
- 算数运算符
value = 9 % 2
print(value) # 1取余
- 比较运算符
>
>=
<
<=
==
!=
-
赋值运算
num = 10 num = num + 2 # num += 2
- 成员运算,xx中是否xx,in为包含
v1 = "张三" in "张三是人" # True
v2 = "俄罗斯" in "日本" # False
text = input("请输入你的评论:")
if "日本" in text:
print("不能包含不是俄罗斯的信息")
else:
print(text)
-
逻辑运算
v1 = True and True # True v2 = True and False # False
user = input(">>>") pwd = input(">>>") if user == "root" and pwd == "123": print("成功") else: print("失败")
关于逻辑运算符的特别应用:
-
一般
# v1 = 条件 and/or 条件 v1 = user == "root" and pwd == "123"
-
高级用法(很少写,面试题+源码)
v1 = 值 and/or 值
and,or,为取决那个值,
v1 = 6 and 9 # 9
v2 = 0 and 1 # 0
v3 = 88 and 0 # 0
v4 = "" and 9 # ""
v5 = "梁伟" and "罗小春" # "罗小春"
v6 = 1 or 2 # 1
v7 = 0 or 2 # 2
# 先分析and后or从左到右
v8 = 1 and 8 or 9 and 10 or 11 or 12 and 0 or "" and "卢慧"
9.基础概念
9.1 进制
计算机底层全都都是 0101010101010 (二进制)
转换:
-
十进制 -> 其他进制//整型转成
v1 = bin(238)//二进制 print(v1) "0b11101110" v2 = oct(238)//八进制 print(v2) # "0o356" v3 = hex(238)//十六进制 print(v3) # "0xee"
-
其他进制,转换成十进制整数
d1 = int("0b11101110", base=2) print(d1) # 238 d2 = int("0o356", base=8) print(d2) # 238 d3 = int("0xee", base=16) print(d3) # 238
9.2 计算机中的单位
内存:8G、硬盘:1T、流量:300M。
计算机底层本质上都是010101010,计算机中为了方便表示搞了一些单位。
10001111 10001111 10001111 10001111 10001111
-
b(bit),位
-
B(byte),字节
-
KB(kilobyte),千字节
1024个字节就是1KB(千字节)。 10010110 11010110 10010111 .. ,1KB 1KB = 1024B= 1024 * 8 b
-
M(Megabyte),兆 -> 8388608
1024KB就是1M 1M= 1024KB = 1024 * 1024 B = 1024 * 1024 * 8 b
-
G(Gigabyte),千兆
1024M就是1G 1 G= 1024 M= 1024 *1024KB = 1024 * 1024 * 1024 B = 1024 * 1024 * 1024 * 8 b
-
T(Terabyte),万亿字节
1024个G就是1T
9.3 编码
编码,文字与二进制的对照表。
9.3.1 ascii编码
ascii编码中总共有256个对应关系。
最开始的编码,只是照顾了美国。
在ascii编码中是用1个字节来表示二进制,所以他只能有256中可能。
9.3.2 gbk和gb2312
GB-2312,国家信息委员会制作(1980年)。
GBK,GB-2312的扩展,包含了中日韩等文字。(1995)。
9.3.3 unicode(万国码)
-
ucs2,用固定的2个字节去表示二进制和文字的对应关系。 2**16 = 65535
-
ucs4,用固定的4个字节去表示二进制和文字的对应关系。 2**32 = 4294967296
9.3.4 utf-8编码
对unicode进行压缩,用尽可能少的自己来表示数据。
9.3.5 Python
在Python开发中,以后再去做文件存储或网络传输时,不能直接用字符串,而是需要将字符串压缩成utf-8编码的字节,然后再来传输和存储。
- 文件编码
- 写文件,写了很多的文本的内容 -> 按照某种编码去存储文件。( 010100101010 )
- 读文件,真正的内容读取出来,用同样的编码才能读取到文本内容。
Python解释器编码,指的是打开和读取某个py文件的内容时,用的是这种编码。 utf-8
- 点赞
- 收藏
- 关注作者
评论(0)