Python学习笔记(总)

python学习笔记

主打的就是一个详细,全套知识点全在 ↓
正在持续更新ing…

一、python首行缩进

Python 使用缩进来表示代码块。

// 正确写法
if 5 > 2:
  print("Five is greater than two!")
// 错误写法
if 5 > 2:
print("Five is greater than two!")

二、注释

// 单行注释
# This is a comment
print("Hello, World!") # This is a comment
// 多行注释
"""
This is a comment
written in
more than just one line
"""

三、变量

// Python 没有用于声明变量的命令。变量在您首次为其赋值时创建。
var foo = 'bar';
x = 5
y = "John"
print(x)
print(y)

// 变量不需要用任何特定类型声明,甚至可以在设置后更改类型。
x = 4       // x is of type int
x = "Sally" // x is now of type str
print(x)

// 如果要指定变量的数据类型,可以通过强制转换来完成。
x = str(3)    // x will be '3'
y = int(3)    // y will be 3
z = float(3)  // z will be 3.0

// 获取类型
x = 5
y = "John"
print(type(x))
print(type(y))

// 变量名称区分大小写。
// 这是两个变量
a = 4
A = "Sally"

// Python 变量的规则:
// 变量名称必须以字母或下划线字符开头
// 变量名称不能以数字开头
// 变量名称只能包含字母数字字符和下划线(A-z、0-9 和 _)
// 变量名称区分大小写(age、age 和 AGE 是三个不同的变量)
// 变量名称不能是任何 Python 关键字。
myvar = "John"
my_var = "John"
_my_var = "John"
myVar = "John"
MYVAR = "John"
myvar2 = "John"

// 驼峰命名 除第一个单词外,每个单词都以大写字母开头:
myVariableName = "John"

// 帕斯卡命名 每个单词都以大写字母开头:
MyVariableName = "John"

// 每个单词都用下划线字符分隔:
my_variable_name = "John"

// Python 允许在一行中为多个变量赋值:
x, y, z = "Orange", "Banana", "Cherry"
print(x)
print(y)
print(z)

// 一行中将相同的值分配给多个变量:
x = y = z = "Orange"
print(x)
print(y)
print(z)

// 拆包 在列表、元组等中有值的集合。 Python 允许您将值提取到变量中。这称为拆包。
fruits = ["apple", "banana", "cherry"]
x, y, z = fruits
print(x)
print(y)
print(z)

// 输出变量
print(x)
print(x, y, z)
print(x + y + z)

// 全局变量
x = "awesome"
def myfunc():
  print("Python is " + x)
myfunc()

// 如果在函数内创建同名变量,则此变量 将是本地的,并且只能在函数内部使用。全局变量 具有相同名称将保持原样,全局和原始值。
x = "awesome"
def myfunc():
  x = "fantastic"
  print("Python is " + x)
myfunc()
print("Python is " + x)

// 要在函数内创建全局变量,可以使用关键字。global
def myfunc():
  global x
  x = "fantastic"
myfunc()
print("Python is " + x)

四、数据类型

文字类型:str
数值类型:int, ,floatcomplex
序列类型:list, ,tuplerange
映射类型:dict
集合类型:set,frozenset
布尔类型:bool
二进制类型:bytes, ,bytearraymemoryview
无类型:NoneType

// 获取数据类型
x = 5
print(type(x))
// 定义数据类型
x = "Hello World"	str
x = 20	int
x = 20.5  float
x = 1j	complex
x = ["apple", "banana", "cherry"]	list
x = ("apple", "banana", "cherry")	tuple
x = range(6)  range
x = {
    
    "name" : "John", "age" : 36}	dict
x = {
    
    "apple", "banana", "cherry"}	set
x = frozenset({
    
    "apple", "banana", "cherry"})  frozenset
x = True  bool
x = b"Hello"  bytes
x = bytearray(5)  bytearray
x = memoryview(bytes(5))  memoryview
x = None  NoneType

五、数字类型

Python 中有三种数字类型:int、float、complex

六、字符串

// python 中的字符串用单引号或双引号括起来。
print("Hello")
print('Hello')
a = "Hello"
print(a)

// 多行字符串
a = """Lorem ipsum dolor sit amet,
consectetur adipiscing elit,
sed do eiusmod tempor incididunt
ut labore et dolore magna aliqua."""
print(a)
print("Hello")
print('Hello')
a = "Hello"
print(a)

// 切片 截取字符串
// 指定起始索引和结束索引(用冒号分隔)以返回 字符串的一部分。
b = "Hello, World!"
print(b[2:5])
// 通过省略起始索引,范围将从第一个字符开始:
b = "Hello, World!"
print(b[:5])
// 通过省略结束索引,范围将转到末尾:
b = "Hello, World!"
print(b[2:])
// 使用负索引从字符串的末尾开始切片:
b = "Hello, World!"
print(b[-5:-2])

// 修改字符串
// 该方法返回大写的字符串:upper()
a = "Hello, World!"
print(a.upper())
// 该方法以小写形式返回字符串:lower()
a = "Hello, World!"
print(a.lower())
// 该方法从开头或结尾删除任何空格:strip()
a = " Hello, World! "
print(a.strip()) # returns "Hello, World!"
// 该方法将一个字符串替换为另一个字符串:replace(要替换的字符,替换的字符)
a = "Hello, World!"
print(a.replace("H", "J"))
// 该方法返回一个列表,其中指定分隔符之间的文本将成为列表项,如果该方法找到分隔符的实例,则会将字符串拆分为子字符串。split()
a = "Hello, World!"
print(a.split(",")) # returns ['Hello', ' World!']

// 字符串格式
// 错误写法
age = 36
txt = "My name is John, I am " + age
print(txt)
// 正确写法
// 该方法采用传递的参数, 设置它们的格式,并将它们放在占位符所在的字符串中:format(){}
age = 36
txt = "My name is John, and I am {}"
print(txt.format(age))

// 转义字符
// 若要在字符串中插入非法字符,请使用转义字符。
// 转义字符是一个反斜杠,后跟要插入的字符。\
// 非法字符的一个示例是用双引号括起来的字符串中的双引号:
txt = "We are the so-called \"Vikings\" from the north."
\'	单引号
\\	反斜杠
\n	换行
\r	回车
\t	Tab
\b	退格键
\f	换页符
\ooo  八进制值
\xhh  设置字体的颜色

// 字符串方法
capitalize()	将第一个字符转换为大写
casefold()	将字符串转换为小写
center()	返回居中字符串
count()	返回指定值在字符串中出现的次数
encode()	返回字符串的编码版本
endswith()	如果字符串以指定值结束,则返回true
expandtabs()	设置字符串的制表符大小
find()	在字符串中搜索指定的值,并返回找到该值的位置
format()	格式化字符串中的指定值
format_map()	格式化字符串中的指定值
index()	在字符串中搜索指定的值,并返回找到该值的位置
isalnum()	如果字符串中的所有字符都是字母数字,则返回True
isalpha()	如果字符串中的所有字符都是字母,则返回True
isdecimal()	如果字符串中的所有字符都是小数,则返回True
isdigit()	如果字符串中的所有字符都是数字,则返回True
isidentifier()	如果字符串是标识符,则返回True
islower()	如果字符串中的所有字符都是小写则返回True
isnumeric()	如果字符串中的所有字符都是数字,则返回True
isprintable()	如果字符串中的所有字符都可打印,则返回True
isspace()	如果字符串中的所有字符都是空白,则返回True
istitle()	如果字符串符合标题的规则,则返回True
isupper()	如果字符串中的所有字符都是大写,则返回True
join()	将可迭代对象的元素连接到字符串的末尾
ljust()	返回字符串的左对齐版本
lower()	将字符串转换为小写
lstrip()	返回字符串的左对齐版本
maketrans()	返回翻译中要使用的翻译表
partition()	返回一个元组,其中字符串被分成三部分
replace()	返回一个字符串,其中指定的值被替换为指定的值
rfind()	在字符串中搜索指定的值,并返回最后找到该值的位置
rindex()	在字符串中搜索指定的值,并返回最后找到该值的位置
rjust()	返回字符串的右对齐版本
rpartition()	返回一个元组,其中字符串被分成三部分
rsplit()	在指定的分隔符处拆分字符串,并返回一个列表
rstrip()	返回字符串的右精简版本
split()	在指定的分隔符处拆分字符串,并返回一个列表
splitlines()	在换行处拆分字符串并返回一个列表
startswith()	如果字符串以指定的值开始,则返回true
strip()	返回字符串的精简版本
swapcase()	交换大小写,小写变成大写,反之亦然
title()	将每个单词的第一个字符转换为大写
translate()	返回翻译后的字符串
upper()	将字符串转换为大写
zfill()	在开头用指定数量的0值填充字符串

七、布尔值

print(10 > 9) // true
print(10 == 9) // false
print(10 < 9) // false

当你在 if 语句中运行条件时,Python 返回 或 :TrueFalse
a = 200
b = 33
if b > a:
  print("b is greater than a")
else:
  print("b is not greater than a")
  
// 评估值和变量
print(bool("Hello"))
print(bool(15))
x = "Hello"
y = 15
print(bool(x))
print(bool(y))

// 几乎任何值都被计算为 如果 有某种内容。True
// 任何字符串都是 ,空字符串除外。True
// 任何数字都是 ,除了 。True0
// 任何列表、元组、集合和字典都是 ,除了 空的。True
// 以下返回false
bool(False)
bool(None)
bool(0)
bool("")
bool(())
bool([])
bool({
    
    })
class myclass():
  def __len__(self):
    return 0
myobj = myclass()
print(bool(myobj))

// Python 还有许多返回布尔值的内置函数,比如函数,可以用来确定对象是否属于某种数据类型:isinstance()
x = 200
print(isinstance(x, int))

八、运算符

Python 将运算符分为以下几组:

// 算术运算符:
+-*/%	取余
**  取幂
//  Floor division

//比较运算符:
==	相等	    x == y
!=	不等于	x != y
>	 大于	x > y
<	 小于	x < y
>=	大于等于	x >= y
<=	小于等于	x <= y

// 逻辑运算符:
and  如果两个语句都为真,则返回真   x < 5 and  x < 10
or	如果其中一个语句为真,则返回真  x < 5 or x < 4
not	反转结果,如果结果为真则返回False  not(x < 5 and x < 10)

// 标识运算符:
is 	如果两个变量是同一对象,则返回True	x is y
is not	如果两个变量不是同一对象,则返回True	 x is not y

// 会员运营商:
in 	如果对象中存在具有指定值的序列,则返回True	x in y
not in	如果对象中不存在具有指定值的序列,则返回True	x not in y

// 按位运算符:
& 	AND	    如果两个位都是1,则将每个位设置为1	    x & y
|    OR	    如果两个位中的一个为1,则将每个位设置为1	x | y
^    XOR    如果两个位中只有一个为1,则将每个位设置为1	x ^ y
~    NOT    反转所有比特	                        ~x
<<	Zero fill left shift	将零从右边移到左边,让最左边的位掉下来	x << 2
>>	Signed right shift	通过将最左边的位的拷贝从左边推入向右移动,并让最右边的位掉下来	x >> 2

// 运算符优先级
// 括号具有最高的优先级,这意味着内部的表达式 必须首先计算括号:
print((6 + 3) - (6 + 3))
// 乘法的优先级高于 加法,因此乘法是 添加前评估:*+
print(100 + 5 * 3)
// 优先级,从高到低
()	括号
**	取幂
+x  -x  ~x	一元加号,一元减号,和位非
*  /  //  %	乘法,除法,除法和模数
+  -	加 减
<<  >>	按位向左和向右移动
&	Bitwise AND
^	Bitwise XOR
|	Bitwise OR
==  !=  >  >=  <  <=  is  is not  in  not in 	比较、标识和成员操作符
not	逻辑非
and	逻辑且
or	逻辑或

九、列表

列表用于在单个变量中存储多个项目。
列表是 Python 中用于存储 data,其他 4 个是元组、集合和字典,它们都具有不同的质量和用法。
列表使用方括号创建:

// list是有顺序的,从0开始。
// 列表是可变的,这意味着我们可以在创建列表后更改、添加和删除列表中的项目。
thislist = ["apple", "banana", "cherry"]
print(thislist)
// 由于列表已编制索引,因此列表可以包含具有相同值的项目
thislist = ["apple", "banana", "cherry", "apple", "cherry"]
print(thislist)

// 列表长度
// 要确定列表包含的项目数,请使用以下函数: len()
thislist = ["apple", "banana", "cherry"]
print(len(thislist))

// 列表项可以是任何数据类型
list1 = ["apple", "banana", "cherry"]
list2 = [1, 5, 7, 9, 3]
list3 = [True, False, False]
list1 = ["abc", 34, True, 40, "male"]

// 列表() 构造函数
thislist = list(("apple", "banana", "cherry")) # note the double round-brackets
print(thislist)

Python 集合(数组)
列表是一个有序且可更改的集合。允许重复成员。
元组是一个有序且不可更改的集合。允许重复成员。
Set 是一个无序的集合, 不可更改*和未编制索引。没有重复的成员。
字典是按顺序排列的集合** 和多变。没有重复的成员。

// 访问列表项
thislist = ["apple", "banana", "cherry"]
print(thislist[0]) // 打印列表第一项

// 负索引
// 负索引意味着从结束开始 -1指最后一项,-2指倒数第二项等。
thislist = ["apple", "banana", "cherry"]
print(thislist[-1]) // 打印列表的最后一项

// 索引范围
// 可以通过指定从何处开始以及从何处开始来指定索引范围 结束范围
// 指定范围时,返回值将是一个新列表,其中 指定的项目
thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]
print(thislist[2:5]) // 搜索将从索引 2(包含)开始,到索引 5(不包括)结束

// 通过省略起始值,范围将从第一项开始
thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]
print(thislist[:4]) // 此示例将项从开头返回到“kiwi”,但不包括“kiwi”

// 通过省略结束值,范围将继续到列表的末尾
thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]
print(thislist[2:]) // 此示例返回从“樱桃”到末尾的项目

// 负指数范围
thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]
print(thislist[-4:-1]) // 本示例返回从“orange”(-4) 到但不包括 “mango”(-1)

// 检查项目是否存在
// 要确定列表中是否存在指定的项,请使用关键字:in
thislist = ["apple", "banana", "cherry"]
if "apple" in thislist:
  print("Yes, 'apple' is in the fruits list")

未完,请耐心等待更新…

猜你喜欢

转载自blog.csdn.net/weixin_55659609/article/details/131417812