python编程基础

变量

字符串

字符串是Python中最常用的数据类型。我们可以使用引号(’或者”)来创建字符串。

string = 'hello world.'
name = "cczhu"
print(string) #hello world.
print(name) #cczhu

打印:

hello world.
cczhu

数字

Python数字数据类型用于存储数值。常用的类型包括整型(int)、浮点型(float)

age = 18
average = 222.222

print(age) #18
print(average) #222.222

打印:

18
222.222

列表

一个有序可变集合的容器。支持内置的基础数据结构甚至是列表,列表是可以嵌套的。不同的数据结构也可以放在同一个列表中,没有统一类型的限制。

books = ['book1', 'book2', 'book3']
data = ['cczhu', 27, books]

print(books[0]) #book1
print(data[-1]) #['book1', 'book2', 'book3']
print(data) #['cczhu', 27, ['book1', 'book2', 'book3']]
print(data[2][1]) #book1

打印:

book1
['book1', 'book2', 'book3']
['cczhu', 27, ['book1', 'book2', 'book3']]
book2

元组

可以视为不可变的列表,在赋值之后就不能二次更改了。

tuple_1 = ("strng", 1, ["a", "b" , "c"], 4)
tuple_2 = ("hi",)
empty_tuple = tuple()
print(tuple_1)

打印:

('strng', 1, ['a', 'b', 'c'], 4)

字典

一个无序可变键值对的容器。字典的每个键值(key/value)对用"冒号:"分割,每个键值对之间用"逗号,"分割,这个那个字典包括在"花括号{}"里面。

dic_1 = {
    'name':'cczhu',
    "age":'22',
    'books':['book1', 'book2', 'book3']
}

dic_2 = dict(
	name='cczhu',
    age=22,
    books=['book1', 'book2', 'book3']
)

print(dic_1)
print(dic_1['name'])
print(dic_1['books'][1])

打印:

{'age': '22', 'books': ['book1', 'book2', 'book3'], 'name': 'cczhu'}
cczhu
book2

集合

一个无序不重复元素的序列。一半可以用来列表去重。

my_list = ['book1', 'book2', 'book2', 'book4']
my_test = {'book1', 'book2', 'book2', 'book4'}
your_test = {'book1', 'book2', 'book3'}

print(my_list)
print(set(my_list))
print(my_test)

print(my_test - your_test)
print(my_test | your_test)
print(my_test & your_test)
print(my_test ^ your_test)

打印:

['book1', 'book2', 'book2', 'book4']
set(['book1', 'book2', 'book4'])
set(['book1', 'book2', 'book4'])
set(['book4'])
set(['book1', 'book2', 'book3', 'book4'])
set(['book1', 'book2'])
set(['book3', 'book4'])

运算符

算术运算符

假设a=10,b=20

运算符描述实例
+加,x加ya+b 输出结果30
-减,x减ya-b 输出结果-10
*乘,两个数相乘或返回一个被重复若干次的字符串a*b输出结果200
/除,x除以yb/a输出结果2
%取模,返回除法的余数b%a输出结果0
**幂,返回x的y次幂a**b为10的20次方,输出结果100,000,000,000,000,000,000
//取整除,返回商的整数部分9//2输出结果4,9.0//2.0输出结果4.0

比较运算符

假设变量a=10,b=20

运算符描述实例
==等于,比较对象是否相等(a == b)返回False
!=不等于,比较对象是否不相等(a != b)返回True
<>不等于,比较对象是否不相等(a <> b) 返回True
>大于,返回x是否大于y(a > b) 返回False
<小于,返回x是否小于y(a < b)返回True
>=大于等于,返回x是否大于等于y(a >= b) 返回False
<=小于等于,返回x是否小于等于y(a <= b)返回True

赋值运算符

假设变量a=10,b=20

运算符描述实例
=简单的赋值运算符c=a+b 将a+b的运算结果赋值给c
+=加法赋值运算符a+=b 等价于a = a + b
-=减法赋值运算符a-=b 等价于a = a -b
*=乘法赋值运算符a*=b等价于a = a * b
/=除法赋值运算符a/=b等价于a = a / b
%=取模赋值运算符a%=b等价于a = a %b
**=幂赋值运算符a **= b 等价于a = a ** b
//=取整数赋值运算符a//=b等价于a = a //b

逻辑运算符

假设变量a=10,b=20

运算符描述实例
and与关系,如果x为False,x and y返回x的值,否者返回y的计算值(a and b) 返回20
or或关系,如果x是True,它返回x的值,否则它返回y的计算值(a or b) 返回10
not如果x为True,返回False。如果x为False,它返回True。not(a and b) 返回False

成员运算符

假设变量a=10,b=20

运算符描述实例
is两个变量引用自同一个对象则返回Truex is y,类似id(x) == id(y),如果引用的是同一个对象则返回True,否者返回False
is not两个变量不是引用自同一个对象返回Truex is not y ,类似于id(a)= !(b)。如果应用的不是同一个对象则结果返回正确接人True,否者返回False

注:is比较的是用户id,而== 比较的是值。

身份运算符

用于比较两个对象的存储单元

运算符描述实例
is两个变量引用自同一个对象则返回Truex is y,类似id(x) == id(y),如果引用的是同一个对象则返回True,否则返回False
is not两个变量不是引用自同一个对象返回Truex is not y,类似id(a) != id(b)。如果引用的不是同一个对象则返回结果True,否则返回False

注:is比较的是id,而==比较的是值。

位运算符

按位运算符是把数字看作二进制来进行计算的

运算符描述
&与运算(两个同时为1,结果为1,否则为0)
|或运算(一个为1,其值为1,否则为0)
^异或运算(值不同,则该位结果为1,否则为0)
~取反运算(对数据的每个二进制位取反,即把1变为0,把0变为1。~a类似-a-1)
<<左移运算(运算数的各二进制位全部左移若干位,由“<<”右边的数指定移动的位数,高位丢弃,低位补0)
>>右移运算(把“>>”左边的运算数的各二进制全部右移若干位,“>>”右边的数指定移动的位数)

语句

条件判断语句:if/elif/else

通过一条或多条语句的执行结果(True或False)来决定执行的代码

条件循环语句:while

while条件:

codeblock1

codeblock2

while运行步骤:

step1:如果条件为真,那么依次执行:codeblock1、codeblock2、…

step2:再次判断条件,如果为True则再次执行:codeblock1、codeblock2、…,如果条件为False,则循环终止。

while+break

break语句可以跳出for和while的循环体

while+continue

continue用于结束本次循环,直接进入下次循环。

迭代循环语句:for

for循环可以遍历任何可选代对象,如一个列表或者一个字符串。break和continue也可用于for循环,同while循环。

函数与类

函数

定义一个函数

函数是组织好的,可重复使用的,用来实现单一或相关联功能的代码段。

  • 语法
def 函数名(参数1, 参数2, 参数3,...);
	'''注释'''
    函数体
    return 返回值
  • 使用原则

先定义,再调用

函数的参数

  • 位置参数

按照从左到右的顺序定义的参数

  • 关键字参数

按照key=value的形式定义的参数,无需按照位置传值。

需要关注:关键字参数必须在位置参数右面;对同一个关键字不能重复传值

  • 默认参数

在定义时就已经为其赋值

  • 可变长参数

参数值的个数不固定。参数有位置和关键字两种形式定义,针对这两种形式的可变长,参数对应有两种解决方案来完整地存放它们,分别是*args,**kwargs。

概念

用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。

  • _init_方法

类的构造函数或初始化方法,当创建了这个类的实例时就会调用该方法。

  • self

代表类的实例自己,在定义类的方法时是必须有的,虽然在调用时不必传入相应的参数。

一切皆对象

在python中,一切皆对象。

对象的交互

模块

概念

模块就是一组功能的集合体,我们的程序可以导入模块来复用模块里的功能。

  • import
import time #导入时间模块
print(time.time())
  • from … import
from time import time #从time模块中只导入一个time方法
print(time())
  • from … import *语句
from time import * #将time模块中的所有内容全部导入
print(time())

python技术体系

python基础知识

变量、容器、函数、文件、多进程等

python网络爬虫

requests/beautifulsoup库、scrapy框架

python web开发

flask框架、django框架

python数值计算

Numpy、Scipy

python数据分析

Pandas

python数据可视化

Matplotlib、Seaborn、Pyecharts

python大数据处理

PySpark、PyHive

python机器学习

Scikit-Learn、Xgboost

python深度学习

Tensorflow

结束寄语

有关python的介绍就到此结束啦!下篇博文与各位再见面~

写博不易,如蒙厚爱,赏个关注,一键三连~~点赞+评论+收藏🤞🤞🤞,感谢您的支持~~

更多推荐

【不会吧不会吧,不会有人真的三分钟入门Python了吧?】Python编程基础