1.Hello Python
Python
Python 在网络爬虫、数据分析、AI、机器学习、Web开发、金融、运维、测试等多个领域都有不俗的表现,从来没有哪一种语言可以同时在这么多领域扎根。
Python基本语法
python关键字
关键字即保留字,和其他语言一样,这些关键字不能用作于标识符名称。Python 中提供了一个可以查询当前版本中的关键字。
import keyword
print(keyword.kwlist)
输出样例:(不同版本的输出可能不同)
['False', 'None', 'True', '__peg_parser__', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
编码
默认情况下,python3源码文件以 UTF-8
进行编码,所有字符串都是 unicode
字符串。可以为源文件指定不同的编码。
#-*- coding: cp-1252 -*-
#-*- coding: utf-8 -*-
标识符
表示符遵循以下几点要求:
-
第一个字符必须是字符表中的字符或下划线 _,但不能是数字。
-
标识符的其他部分由字母、数字和下划线组成(不能有空格)。
-
变量名不能用 Python 关键字和函数名。
-
标识符对大小写敏感。
-
非 ASCII 标识符也是可以的。(可以但不要用)
今天的日期 = "2023.1.1"
nowaday = "2023.1.1"
print(今天的日期)
print(nowaday)
#print(Nowaday)
输出样例:
2023.1.1
2023.1.1
# 第三个输出会报错
注释
Python 中有两种注释方法:单行注释、多行注释
- 单行注释
使用 #
进行单行注释
没注释
# 要注释的内容
没注释
- 多行注释
使用连续的三个 '
或 "
对要注释的内容进行包含,这两种符号不能混着使用。
'''
要注释的内容
'''
没注释
"""
要注释的内容
"""
缩进
在 python 中不需要使用大括号来对缩进进行表示,而是直接使用缩进的不同来区分不同的包含关系。其中缩进的空格是可变的,但是同一个代码块的缩进必须要一样(最好都是使用四个空格的tab递进进行区分)。
if is_True:print("True")
else:print("False")
多行语句
多用于对一个较长的公式进行分行书写,可以使用反斜杠 \
来实现分行。在使用 [],{},()
的语句中不需要使用反斜杠可以直接分行。
a, b, c = 1, 2, 3
total = a + b + c
total = a + \b + \c
# 在有括号的情况下,不需要加反斜杠
total = (a +b +c)
- 在字符串中反斜杠
\
可作为转义符和其他字符一起表示换行、空格等,要是想输出反斜杠可以在字符串前加上r
表示原始字符串,不发生转义。
s = "aaa\nbbb"
print(s)
s = r'aaa\nbbb'
print(s)
输出样例:
aaa
bbb
aaa\nbbb
数字类型
Python 中有四种数字类型:整数、布尔型、浮点数和复数。
- 1.整数(int):1,2,3,4…(Python 中只有一种整形,没有 long)
- 2.布尔值(bool):True 和 False
- 3.浮点数(float):1.23 和 3E-2
- 4.复数(complex):1 + 2j 和 1.1 + 2.2j
is_int = 10
is_bool = True
is_float = 1.23
is_complex = 1 + 2j
print(type(is_int))
print(type(is_bool))
print(type(is_float))
print(type(is_complex))
输出样例:
<class 'int'>
<class 'bool'>
<class 'float'>
<class 'complex'>
字符串
Python 中单引号 '
或双引号 "
中包含的字符被称为字符串,这两种符号使用完全相同,但是不能混用。
- 1.使用连续的三个
'
或"
可以表示一个多行的字符串,可以和注释一起理解。 - 2.在字符串中反斜杠
\
会用于和其他字符一起表示换行、空格等,要是想输出反斜杠可以在字符串前加上r
。具体样例看上面多行语句中。 - 3.字符串可以用
+
运算符连接,用*
运算符重复
s = "a"
print(s)
s = s + "b"
print(s)
s = s * 2
print(s)
输出样例:
a
ab
abab
- 4.字符串有两种索引方式,从左往右以 0 开始,从右往左以 -1 开始,字符串截取格式为:
变量名[]
s = "123456"
print(s)
print(s[0])
print(s[-1])
print(s[0:-1])
print(s[2:])
输出样例:
123456
1
6
12345
3456
- 5.Python 中字符串无法修改特定位置的字符,要是一定要修改就将字符串转化为列表,后修改列表中的字符,然后再使用
''.join()
进行拼接。
s = "123456"
# s[3] = "1" # 会
s = "123456"
s2 = list(s)
s2[3] = "1"
print(''.join(s2))
输出样例:
123156
空行
Python 中书写时有无空行在编译时不会导致错误,主要用于直观的展现代码,便于日后代码的维护。
输入与输出
使用 input 输入
input
默认输入的是字符串,要是需要输入其他格式的数据需要进行转换,要是需要一次输入两个值,且同时需要转化为统一格式、中间用空格分开,可以使用以下输入格式。
# 输入一个字符串 s
s = input()
# 输入一个整数 n
n = int(input())
# 输入两个整数 a,b
a, b = map(int, input().split(' '))
使用 print 输出
print
默认换行,如果不需要换行需要设定 end=''
print("abc")
print("abc", end='')
print("abc", end=',')
输出样例:
abc
abcabc,
import 和 from … import
在 python 中可以使用 import
和 from ... import
来导入相应的包,其中 import
可以将某个包整个进行导入,from ... import
可以将某个包中的特定函数进行导入,要是想从某个包中导入多个特定函数直接在后面使用逗号连接就行。
对于导入的包或函数可以对其重命名,如下:
import somemodule
from somemodule import somefunction
from somemodule import firstfunc, secondfunc, thirdfunc# 常见的是将 numpy as np ; pandas as pd
import numpy as np
import pandas as pd
命令行参数
在命令行中可以查询 Python 的参数,也可以查看某个函数的说明。
python -h
help(list)
相关文章:

1.Hello Python
Python Python 在网络爬虫、数据分析、AI、机器学习、Web开发、金融、运维、测试等多个领域都有不俗的表现,从来没有哪一种语言可以同时在这么多领域扎根。 Python基本语法 python关键字 关键字即保留字,和其他语言一样,这些关键字…...

C语言实例|编写C程序在控制台打印余弦曲线
C语言文章更新目录 C语言学习资源汇总,史上最全面总结,没有之一 C/C学习资源(百度云盘链接) 计算机二级资料(过级专用) C语言学习路线(从入门到实战) 编写C语言程序的7个步骤和编程…...

《Hadoop篇》------大数据及Hadoop入门
目录 一、大数据及Hadoop入门 1.1 单节点、分布式、集群 1.1.1 大数据的概念 1.1.2 大数据的本质 二、HDFS Shell命令 2.1、常用相关命令 2.2、上传文件 2.2.1、上传文件介绍 2.2.2上传文件操作 2.3、下载文件 2.4、删除文件 2.5、创建目录 2.6、查看文件系统 2.…...

TCP核心机制详解(三)
目录 前言: 滑动窗口 滑动窗口处理丢包问题 流量控制 拥塞控制 延时应答 捎带应答 面向字节流 异常情况 小结: 前言: 前两篇文章讲述了,TCP十种核心机制的前三种。这篇文章详细介绍其他的一些核心机制,让我们…...

最易上手的爬虫请求库:Requests核心功能速览(下)
上一个章节我们讲了如何快速使用Requests发送网络请求、处理URL参数和提取响应内容,这些是最基本的操作。 然而还有很多场景下,我们的网络请求更加复杂。比如我们必须要定制请求头来假装成浏览器,不然可能会被网站识别为机器并且被屏蔽;又比如我们需要在发送请求时以表单形…...

生产故障|Kafka ISR频繁伸缩引发性能急剧下降
生产故障|Kafka ISR频繁伸缩引发性能急剧下降-阿里云开发者社区 本文是笔者双十一系列第二弹,源于一个双十一期间一个让笔者猝不及防的生产故障,本文将详细剖析Kafka的副本机制,以及ISR频繁变更(扩张与伸缩)为什么会导致集群不可…...

c++终极螺旋丸:₍˄·͈༝·͈˄*₎◞ ̑̑“类与对象的结束“是结束也是开始
文章目录 前言一.构造函数中的初始化列表 拷贝对象时的一些编译器优化二.static成员三.友元四.内部类总结前言 前两期我们将类和对象的重点讲的差不多了,这一篇文章主要进行收尾工作将类和对象其他的知识点拉出来梳理一遍,并且补充前两篇没有讲过的…...

【Python--torch.nn.functional】F.normalize用法 + 代码说明
【Python–torch.nn.functional】F.normalize介绍 代码说明 文章目录【Python--torch.nn.functional】F.normalize介绍 代码说明1. 介绍2. 代码说明2.1 一维Tensor2.2 二维Tensor2.3 三维Tensor3. 总结1. 介绍 import torch.nn.functional as F F.normalize(input: Tensor, …...

【算法题】1887. 使数组元素相等的减少操作次数
插: 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 坚持不懈,越努力越幸运,大家一起学习鸭~~~ 题目: 给你一个整数数组 nums ࿰…...

GD库图片裁剪指定形状解决办法(PHP GD库 海报)
需求描述:需要把图片裁剪成一个指定的平行四边形,目的是使用GD库,把裁剪后的图片放在底图上面,使最终合成的图片看起来是一个底图平行四边形的样子提示:可以结合本作者的其他文章,来生成一个定制化的海报&a…...

redis的简介及应用场景
1、基本信息 Redis英文官网介绍: Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. It supports data structures such as strings, hashes, lists, sets, sorted sets with range queri…...

2、HAL库利用滴答定时器systick(1ms中断)实现时间计数戳
文档说明:通过滴答定时器的1ms中断实现时间计数,标记需要的时间标志,在主函数中查询标志,避免延时函数消耗CPU 1、HAL库systick定时器说明 在CubeMx生成的代码main()函数首先执行的函数为HAL_Init();里面会进行滴答定时器初始化…...

Spring入门学习
Spring入门学习 文章目录Spring入门学习Spring概述Spring FrameworkIOCIOC容器DIIOC容器的实现类①FileSystemXmlApplicationContext②ClassPathXmlApplicationContext基于XML管理bean入门案例创建类创建xml在Spring配置文件中配置bean测试Spring概述 Spring 是最受欢迎的企业级…...

webpack(4版本)使用
webpack简介:webpack 是一种前端资源构建工具,一个静态模块打包器(module bundler)。在 webpack 看来, 前端的所有资源文件(js/json/css/img/less/...)都会作为模块处理。它将根据模块的依赖关系进行静态分析,打包生成对应的静态资源(bundle)…...

Linux安装ElasticSearch
下载地址:https://www.elastic.co/cn/downloads/past-releases#elasticsearch 1 版本选择 ElasticSearch 7 及以上版本都是自带的 jdk,假如需要配置指定的 jdk 版本的话,可以在 es 的 bin 目录下找到elasticsearch-env.bat 这个文件&#x…...

Linux中C语言编程经验总结
修改记录 版本号日期更改理由V1.02022-03-15MD化 总则 仅总结一些常用且实用的编程规范和技巧,且避免记忆负担,聚焦影响比较大的20% ! 编译器 打开全warning编译器开关 正例 gcc -W -Wall -g -o someProc main.c反例 gcc -g -o someProc main…...

jvisualvm工具使用
jdk自带的工具jvisualvm,可以分析java内存使用情况,jvm相关的信息。 1、设置jvm启动参数 设置jvm参数**-Xms20m -Xmx20m -XX:PrintGCDetails** 最小和最大堆内存,打印gc详情 2、测试代码 TestScheduleClassGc package com.core.schedule;…...

redis五大IO网络模型、内存回收
目录1.0用户空间和内核态空间1.1 网络模型-阻塞IO1.2 网络模型-非阻塞IO1.3 网络模型-IO多路复用1.3.1 网络模型-IO多路复用-select方式1.3.2 网络模型-IO多路复用模型-poll模式1.3.3 网络模型-IO多路复用模型-epoll函数1.3.4 网络模型-epoll中的ET和LT1.3.5 网络模型-基于epol…...

【C/C++】内存管理详解
目录内存布局思维导图1.C/C内存分布数据段:栈:代码段:堆:2.C语言中动态内存管理方式3.C内存管理方式3.1new/delete操作内置类型3.2new和delete操作自定义类型4.operator new 与 operator delete函数5.new和delete的实现原理5.1内置类型5.2自定…...

Android ProcessLifecycleOwner 观察进程生命周期
文章目录简介使用依赖用法1,结合 LiveData用法2,获取 owner的 lifecycle 实例,并对 lifecycle 添加观察者简介 ProcessLifecycleOwner 直译,就是,进程生命周期所有者。 通过 DOC 注释了解到: Lifecycle.E…...

如何编写一个 npm 插件?
提到写 npm 插件,很多没搞过的可能第一感觉觉得很难,无从下手,其实不然。 我们甚至写个简单的 console.log(hello word),都是可以当成一个插件发布上去的。 其实无从下手的主要难点还是在于你的具体要做的功能逻辑,这…...

mapstruct- 让VO,DTO,ENTITY转换更加便捷
mapstruct- 让VO,DTO,ENTITY转换更加便捷 1. 简介 MapStruct是一个代码生成器,简化了不同的Java Bean之间映射的处理,所谓映射指的就是从一个实体变化成一个实体。例如我们在实际开发中,DAO层的实体和一些数据传输对…...

IAR警告抑制及还原
工作中需要临时抑制 警告 Pa084,源代码如下: sy_errno_t sy_memset_s(void *dest, sy_rsize_t dmax, int value, sy_rsize_t n) { sy_errno_t err; if (dest NULL) { return SY_ESNULLP; } if (dmax > SY_RSIZE…...

工厂模式(Factory Pattern)
1.什么是工厂模式 定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行。 2.工厂模式的作用 实现创建者和调用者的分离 3.工厂模式的分类 简单工厂模式工厂方法模式抽象工厂模式 4.工厂模式的优缺点 优…...

JavaScript语法学习--《JavaScript编程全解》
《JavaScript编程全解》 JavaScript琐碎基础 0.前言 1.RN: react native是Facebook于2015年4月开源的跨平台移动应用开发框架,是Facebook早先开源的JS框架 React 在原生移动应用平台的衍生产物,支持iOS和安卓两大平台。 2.ts与js js:是弱…...

linux安装极狐gitlab
1. 官网寻找安装方式 不管我们使用任何软件,最靠谱的方式就是查看官方文档。gitlab提供了相应的安装文档,并且有对应的中文文档。地址如下: https://gitlab.cn/install/ 我在这里以CentOS作为安装示例,大家可根据自己的需要选择…...

软考高级信息系统项目管理(高项)原创论文——人力资源管理
人力资源管理 某市某国有装备制造公司智能安防信息管控平台项目是在公司推进企业信息化进程和实现企业可持续发展的背景下于2016年8月提出来的,我公司积极应标并最终顺利中标,而我有幸被任命为项目经理,担任起该项目的管理工作。该项目投资金额为530万元,其中软件部分为360…...

Java Lambda表达式 匿名内部类 函数式接口(FunctionalInterface)
Java Lambda表达式定义背景示例匿名类实现Lambda表达式实现对比匿名类和Lambda实现Lambda表达式(调用)说明Lambda表达式的语法Java 1.8 新特性:函数式接口jdk 1.8 自带的函数式接口 (举例)定义 参考Oracle官网&#x…...

javaEE 初阶 — 流量控制与拥塞控制
文章目录1. 流量控制2. 拥塞控制TCP 工作机制:确认应答机制 超时重传机制 连接管理机制 滑动窗口 1. 流量控制 流量控制是一种干扰发送的窗口大小的机制,滑动窗口,窗口越大,传输的效率就越高(一份时间,…...

HTML自主学习 - 2
一、表格 基本语法 <table><tr><td>单元格内容1</td><td>单元格内容2</td><td>单元格内容3</td></tr></table> 1、<table> </table>标签用于定义表格 2、<tr> </tr>标签用于定义表格的…...