IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Python 基础 -> 正文阅读

[Python知识库]Python 基础

一、基础语法

1. 标识符

在 Python 中,标识符由字母、数字、下划线组成,不能以数字开头,区分大小写。

以下划线开头的标识符是有特殊意义的:

  • 单下划线开头 _xx :表示不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx import * 导入。
  • 双下划线开头 __xx :表示类的私有成员。
  • 双下划线开头和结尾 __xx__ :表示Python中特殊方法专用的标识,如 __init__() :类的构造函数。

2. 保留字符

下表中是 Python 中的保留字。这些保留字不能用作常数或变数,或任何其他标识符名称。
所有 Python 的关键字只包含小写字母。

andexecnotassertfinallyor
breakforpassclassfromprint
continueglobalraisedefifreturn
delimporttryelifinwhile
elseiswithexceptlambdayeild

3. 行和缩进

Python语句中一般以新行作为语句的结束符,一行语句太长可用 \ 分为多行显示;显示多条语句,用 ; 分隔,

total = item_one + \
        item_two + \
        item_three

语句中包含 [] , {}() 括号就不需要使用 \

days = ['Monday', 'Tuesday', 
		'Wednesday',
        'Thursday', 'Friday']

Python 最具特色的就是用缩进来写模块。Python 的代码块不使用大括号 {} 来控制类,函数以及其他逻辑判断,缩进空白数量可变。

if True:
    print ("True")
else:
    print ("False")

4. 引号

Python 可以使用引号 ' 、双引号 " 、三引号 '''""" 来表示字符串。

word = 'word'
sentence = "这是一个句子。"
paragraph = """这是一个段落。
包含了多个语句"""

5. 注释

Python中单行注释采用 # 开头,多行注释使用三个单引号 ''' 或三个双引号 """

# 第一个单行注释
print ("Hello, Python!")  # 第二个单行注释

'''
这是多行注释,使用单引号。
这是多行注释,使用单引号。
'''

"""
这是多行注释,使用双引号。
这是多行注释,使用双引号。
"""

6. 中文编码

Python 2.x中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错,解决方法:在文件开头加入 # -*- coding: UTF-8 -*- 或者 # coding=utf-8 即可。

Python3.X 源码文件默认使用 utf-8 编码,无需指定。

7. 数据类型

Python3 中有六个标准的数据类型:

  • Number(数字)
  • String(字符串)
  • List(列表)
  • Tuple(元组)
  • Set(集合)
  • Dictionary(字典)

Python3 的六个标准数据类型中:

  • 不可变数据类型:Number(数字)、String(字符串)、Tuple(元组);
  • 可变数据类型:List(列表)、Dictionary(字典)、Set(集合)。

8. 变量赋值

多个变量赋值的方式:

a = b = c = 1

a, b, c = 1, 2, "john"

9. 运算符

从最高到最低优先级的所有运算符:

运算符描述
**幂运算(最高优先级)
~ + -取反,正号,负号
* / % //乘,除,取模,取整除
+ -加法,减法
>> <<右移,左移
&
^ |异或、或
<= < > >=比较运算符
<> == !=等于运算符
= %= /= //= -= += *= **=赋值运算符
is is not身份运算符
in not in成员运算符
not and or逻辑运算符

二、数字

1. 数值类型

Python中数字有四种类型:整数、布尔型、浮点数和复数。

  • int (整数), 如 1, 只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。
  • bool (布尔), 如 True。
  • float (浮点数), 如 1.23、3E-2
  • complex (复数), 如 1 + 2j、1.1 + 2.2j

2. 其他

① Python 中整形大小没有限制;
② 数字长度过大,可使用下划线作为分隔符

c = 123_456_789

③ 进制表示:

二进制0b或0B开头
八进制0o或0O开头
十六进制0x或0X开头

3. 类型转换

int(x [,base])将x转换为一个整数
float(x)将x转换到一个浮点数
complex(real [,imag])创建一个复数
str(x)将对象 x 转换为字符串
repr(x)将对象 x 转换为表达式字符串
eval(str)用来计算在字符串中的有效Python表达式,并返回一个对象
tuple(s)将序列 s 转换为一个元组
list(s)将序列 s 转换为一个列表
chr(x)将一个整数转换为一个字符
unichr(x)将一个整数转换为Unicode字符
ord(x)将一个字符转换为它的整数值
hex(x)将一个整数转换为一个十六进制字符串
oct(x)将一个整数转换为一个八进制字符串

4. 数学函数

Python 中数学运算常用的函数基本在 math 模块中。
要使用 math 函数必须先导入

import math

math.abs(-1)	#返回 -1 的绝对值

Python math 模块中包含一下常用函数:

函数返回值(描述)
factorial(x)返回 x 的阶乘
cmp(x, y)如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1
abs(x)返回 x 的绝对值,如:abs(-10) 返回 10
ceil(x)返回 x 的上入整数,如:math.ceil(4.1) 返回 5
floor(x)返回 x 的下舍整数,如math.floor(4.9)返回 4
exp(x)返回 e 的 x 次幂
log(x)返回以 e 为底 x 的对数
log10(x)返回以 10 为底 x 的对数
pow(x, y)返回 x 的 y 次幂
sqrt(x)返回 x 的平方根
round(x [,n])返回浮点数x 的四舍五入值,如给出n值,则代表舍入到小数点后的位数

5. 随机函数

Python random 模块中包含以下常用随机数函数:

函数返回值(描述)
choice(seq)从序列的元素中随机挑选一个元素,比如:random.choice(range(10))
randrange ([start,] stop [,step])从指定范围内,按指定基数递增的集合中获取一个随机数,基数默认值为 1
random()随机生成下一个实数,它在[0,1)范围内。
seed([x])改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择seed。
shuffle(lst)将序列的所有元素随机排序
uniform(x, y)随机生成下一个实数,它在[x,y]范围内。

三、字符串

通过单引号 ' 、双引号 " 、三引号 '''""" 来定义。

1. 访问字符串中的值

Python 访问子字符串,可以使用方括号来截取字符串:

str = 'Hello World!'
 
print(str[0])	# H
print(str[2:5]) # llo
print(str[2:])	# llo world!

2. 运算符

下表实例变量 a 值为字符串 “Hello”,b 变量值为 “Python”:

操作符描述实例
+字符串连接>>> a + b
‘HelloPython’
*重复输出字符串>>> a * 2
‘HelloHello’
[ ]通过索引获取字符串中字符>>> a[1]
‘e’
[ : ]截取字符串中一部分>>> a[1:4]
‘ell’
in成员运算符 - 若字符串中包含指定的字符返回 True>>> “H” in a
True
not in成员运算符 - 若字符串中不包含指定的字符返回 True>>> “M” not in a
True
r/R原始字符串 - 原始字符串:所有的字符串都是直接按照字面的意思来使用。>>> print r’\n’
\n
>>> print R’\n’
\n

3. 字符串格式化

将一个值插入到一个有字符串格式符 %s 的字符串中。Python 字符串格式化符号:

占位符描述
%s格式化字符串
%d格式化整数
%f格式化浮点数字,可指定小数点后的精度

如下实例:

print ("My name is %s and weight is %d kg!" % ('Zara', 21))

# My name is Zara and weight is 21 kg!

?? 更多格式化符号

格式化符号辅助指令:

符号功能
*定义宽度或者小数点精度
-用做左对齐
+在正数前面显示加号(+)
#在八进制数前面显示零(‘0’),在十六进制前面显示’0x’或者’0X’(取决于用的是’x’还是’X’)
0显示的数字前面填充’0’而不是默认的空格
m.n.m 是显示的最小总宽度,n 是小数点后的位数(如果可用的话)

4. 三引号

Python 三引号允许一个字符串跨多行,字符串中可以包含换行符、制表符以及其他特殊字符。

典型的用例,使用一块HTML或者SQL。

errHTML = '''
<HTML>
<HEAD><TITLE>Friends CGI Demo</TITLE</HEAD>
<BODY><H3>ERROR</H3>
<B>%s</B><P>
<FORM><INPUT TYPE=button VALUE=Back
ONCLICK="window.history.back()"></FORM></BODY>
</HTML>
'''
cursor.execute('''
CREATE TABLE users (  
login VARCHAR(8), 
uid INTEGER,
prid INTEGER)
''')

5. f-string

f-string 是 python3.6 之后版本添加的,称之为字面量格式化字符串,是新的格式化字符串的语法。之前我们习惯用百分号 (%):

name = "Tom"
s = "Hello, %s" % name
print(s)	# Hello, Tom

f-string 格式化字符串以 f 开头,后面跟字符串,字符串中的表达式用大括号 {} 包起来,它会将变量或表达式计算后的值替换进去,实例如下:

name = "Jerry"
s = f"Hello, {name}"
print(s)	# Hello, Jerry

6. Python 的字符串内建函数

?? Python 的字符串常用内建函数

7. format 格式化函数

Python2.6 开始,新增了一种格式化字符串的函数 str.format() ,它增强了字符串格式化的功能。

基本语法是通过 {}: 来代替以前的 %

format 函数可以接受不限个参数,位置可以不按顺序。

>>> "{} {}".format("hello", "world")    # 不设置指定位置,按默认顺序
'hello world'
 
>>> "{0} {1}".format("hello", "world")  # 设置指定位置
'hello world'
 
>>> "{1} {0} {1}".format("hello", "world")  # 设置指定位置
'world hello world'

也可以设置参数:

print("网站名:{name}, 地址 {url}".format(name="CSDN", url="www.csdn.net"))
 
# 通过字典设置参数
site = {"name": "CSDN", "url": "www.csdn.net"}
print("网站名:{name}, 地址 {url}".format(**site))
 
# 通过列表索引设置参数
my_list = ['CSDN', 'www.csdn.net']
print("网站名:{0[0]}, 地址 {0[1]}".format(my_list))  # "0" 是必须的

?? 更多 format 函数用法

四、 基本语句

1. 条件语句

在进行逻辑判断需要用到条件语句,Python 提供了 ifelifelse 来进行逻辑判断。格式如下所示:

if 判断条件1:
    代码块1
elif 判断条件2:
    代码块2
else:
    代码块3

2. 循环语句

Python 提供了 for 循环和 while 循环(在 Python 中没有 do…while 循环)。

2.1 for 循环

Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串:

# 第一个实例
for letter in 'Python':
   print("当前字母: %s" % letter)
 
 # 第二个实例
fruits = ['banana', 'apple',  'mango']
for fruit in fruits:
   print ('当前水果: %s' % fruit)

循环使用 else 语句
在 python 中,for … else 中 else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。

for iterating_var in sequence:
	代码块
else:
	代码块

2.2 while 循环

while 循环,满足条件时进行循环,不满足条件时退出循环。如下所示:

count = 0
while (count < 9):
   print ('The count is:', count)
   count = count + 1

3 pass 语句

Python pass 是空语句,是为了保持程序结构的完整性。
pass 不做任何事情,一般用做占位语句。

if True:
	pass

五、序列

Python 中的序列是一块可存放多个值的连续内存空间,所有值按一定顺序排列,每个值所在位置都有一个编号,称其为索引。

1. 分类

可变序列 (序列中的元素可以改变):列表(list) 字典(dict)

不可变序列 (序列中的元素不能改变):字符串(str) 元组(tuple)

2. 序列操作

2.1 索引

序列索引方式:

  • 从左到右索引,默认0开始
  • 从右到左索引,默认-1开始

2.2 切片

切片操作可以访问一定范围内的元素,

sname[start : end : step]

  • sname:表示序列的名称;
  • start:开始索引位置(包括),默认为 0;
  • end:表示切片的结束索引位置(不包括),默认为序列的长度;
  • step:步长。
str = 'Python'
print(str[:2])	# Py
print(str[2:])	# thon
print(str[::2])	# Pto

2.3 相加

Python 支持序列使用 + 作相加操作

list = ['zhansan', 78.6 , 'lisi', 70.2]
tinylist = ['john', 72.5]
li = list + tinylist
print (li)		# ['zhansan',78.6,'lisi',70.2,'john',72.5]

2.4 相乘

Python 支持序列使用 * 作相乘操作

tinylist = ['john', 72.5]
list = tinylist * 2
print (li)	# ['john', 72.5, 'john', 72.5]

2.5 检查成员

in / not in: 检查某元素是否为序列的成员

people = ['zhangsan', 'lisi', 'wangwu']
name = 'zhangsan'
print(name in people)	# True

六. 列表、元组

2. 方法

Python包含以下方法:

方法功能
list.append(obj)在列表末尾添加新的对象
list.count(obj)统计某个元素在列表中出现的次数
list.extend(seq)在列表末尾一次性追加另一个序列
list.index(obj)从列表中找出某个值第一个匹配项的索引位置
list.insert(index, obj)将对象插入列表
list.pop([index=-1])移除列表中的一个元素(默认最后一个元素),并返回该元素的值
list.remove(obj)移除列表中某个值的第一个匹配项
list.reverse()反向列表中元素
list.sort(cmp=None, key=None, reverse=False)对原列表进行排序
reverse:False:默认升序,True:降序
  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-02-04 10:59:51  更:2022-02-04 11:02:11 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 2:48:27-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码