【Python】基础总结

Python015

【Python】基础总结,第1张

input("提示性信息")

如:

input("请输入数字")

因为 Python 没有特别人为规定数据类型,数据类型是由计算机进行判定,所以我们 input() 输入的数据均默认作为字符串处理,而如果要输入一些数字,着需要 eval() 评估函数对字符串进行评估,化为语句(数字)。

print(...)

默认空一行,如果想不空行,则

print(...., end = "")

特性:

进制:

特性:

浮点数间运算存在不确定尾数,不是 bug

如:0.1+0.3 → 0.4

0.1+0.2 → 0.30000000000000004

这是由于在计算机中一切数据都是化为二进制进行存储的,而有的浮点数并不能完全化为相等的二进制数,只能无限趋近于二进制数。

如:0.1 →

解决方法:

四舍五入:

例如:z = 1.23e-4 + 5.6e+89j

z.real 获得实部,z.imag 获得虚部

三种类型存在一种逐渐“扩展”或“变宽”的关系:

整数 → 浮点数 → 复数

特点:

字符串有 2 类共 4 种表示方法:

扩展:

使用[]获取字符串中一个或多个字符

使用[M:N:K]根据步长对字符串切片

{<参数序号>:<格式控制标记>}

> 右对齐

^ 居中对齐 | 槽设定的输出宽度 | 数字的千位分隔符 | 浮点数小数精度 或 字符串最大输出长度 | 整数类型

b , c , d , o , x , X

浮点数类型

e , E , f , % |

填充、对齐、宽度这三个一组,例如:

"{0:=^20}".format("PYTHON")

→ '=======PYTHON======='

"{0:*>20}".format("BIT")

→ '*****************BIT'

"{:10}".format("BIT")

'BIT '

剩下的三个一组,例如:

"{0:,.2f}".format(12345.6789)

→ '12,345.68'

"{0:b},{0:c},{0:d},{0:o},{0:x},{0:X}x".format(425)

→ '110101001,Σ,425,651,1a9,1A9'

"{0:e},{0:E},{0:f},{0:%}".format(3.14)

'3.140000e+00,3.140000E+00,3.140000,314.000000%'

↓CloseCode↓

使用 raise 语句抛出一个指定的异常。

raise [Exception [, args [, traceback]]]

紧凑形式:适用于简单表达式的二分支结构

<表达式1>if <条件>else <表达式2>

例如:

↓CloseCode↓

↓CloseCode↓

↓CloseCode↓

↓CloseCode↓

例如:

↓CloseCode↓

运行结果:

↓CloseCode↓

↓CloseCode↓

例如:

↓CloseCode↓

运行结果:

↓CloseCode↓

↓CloseCode↓

例如:

↓CloseCode↓

运行结果:

↓CloseCode↓

↓CloseCode↓

例如:

↓CloseCode↓

运行结果:

↓CloseCode↓

↓CloseCode↓

例如:

↓CloseCode↓

运行结果:

↓CloseCode↓

由条件控制的循环运行方式

↓CloseCode↓

例如:

↓CloseCode↓

运行结果:

↓CloseCode↓

↓CloseCode↓

↓CloseCode↓

例如:

↓CloseCode↓

运行结果:

↓CloseCode↓

例如:

↓CloseCode↓

运行结果:

↓CloseCode↓

↓CloseCode↓

可选参数例如:

↓CloseCode↓

运行结果:

↓CloseCode↓

可变参数例如:

↓CloseCode↓

运行结果:

↓CloseCode↓

在函数定义中,经常会碰到 *args(arguments) 和作为参数 **kwargs(keyword arguments)。

(事实上在函数中,和才是必要的,args 和 kwargs 可以用其他名称代替)

*args 是指不定数量的非键值对参数。

**kwargs 是指不定数量的键值对参数。

*args 作为作为元组匹配没有指定参数名的参数。而 **kwargs 作为字典,匹配指定了参数名的参数。

*args 必须位于 **kwargs 之前。

args( 通常紧跟一个标识符,你会看到a或者args都是标识符)是python用于接收或者传递任意基于位置的参数的语法。当你接收到一个用这种语法描叙参数时(比如你在函数def语句中对函数签名使用了星号语法),python会将此标识符绑定到一个元祖,该元祖包含了所有基于位置的隐士的接收到的参数。当你用这种语法传递参数时,标识符可以被绑定到任何可迭代对象(事实上,它也可以是人和表达式,并不必须是一个标识符),只要这个表达式的结果是一个可迭代的对象就行。

**kwds(标识符可以是任意的,通常k或者kwds表示)是python用于接收或者传递任意基于位置的参数的语法。(python有时候会将命名参数称为关键字参数,他们其实并不是关键字--只是用他们来给关键字命名,比如pass,for或者yield,还有很多,不幸的是,这种让人疑惑的术语目前仍是这门语言极其文化根深蒂固的一个组成部分。)当你接收到用这种语法描叙的一个参数时(比如你在函数的def语句中对函数签名使用了双星号语法)python会将标识符绑定到一个字典,该字典包含了所有接收到的隐士的命名参数。当你用这种语法传递参数时,标识符只能被绑定到字典(我ID号I它也可以是表达式,不一定是一个标识符,只要这个表达式的结果是一个字典即可)。

当你在定义或调用一个函数的时候,必须确保a和k在其他所有参数之后。如果这两者同时出现,要将k放在a之后。

lambda函数返回函数名作为结果

↓CloseCode↓

例如:

↓CloseCode↓

运行结果:

↓CloseCode↓

谨慎使用lambda函数

学习python主要是自学或者报班学习的方式,但不建议自学。

如果想通过学习python改行,那就需要明确一下自己的方向。因为python编程有很多方向,有网络爬虫、数据分析、Web开发、测试开发、运维开发、机器学习、人工智能、量化交易等等,各个方向都有特定的技能要求。

想学的话,当然是可以学习的。python是一门语法优美的编程语言,不仅可以作为小工具使用提升我们日常工作效率,也可以单独作为一项高新就业技能!

python可以做的事情:

软件开发:用python做软件是很多人正在从事的工作,不管是B/S软件,还是C/S软件,都能做。并且需求量还是挺大的;

数据挖掘:python可以制作出色的爬虫工具来进行数据挖掘,而在很多的网络公司中数据挖掘的岗位也不少;

游戏开发:python扩展性很好,拥有游戏开发的库,而且游戏开发绝对是暴力职业;

大数据分析:如今是大数据的时代,用python做大数据也是可以的,大数据分析工程师也是炙手可热的职位;

全栈工程师:如今程序员都在向着全栈的方向发展,而学习python更具备这方面的优势;

系统运维:python在很多linux中都支持,而且语法特点很向shell脚本,学完python做个系统运维也是很不错的。

互联网行业目前还是最热门的行业之一,学习IT技能之后足够优秀是有机会进入腾讯、阿里、网易等互联网大厂高薪就业的,发展前景非常好,普通人也可以学习。

想要系统学习,你可以考察对比一下开设有相关专业的热门学校,好的学校拥有根据当下企业需求自主研发课程的能力,能够在校期间取得大专或本科学历,中博软件学院、南京课工场、南京北大青鸟等开设相关专业的学校都是不错的,建议实地考察对比一下。

祝你学有所成,望采纳。

请点击输入图片描述

1.Python初步

Python是一种面向对象、直译式计算机程序设计语言。公认的特点是简单、易学、免费、开源等等。个人觉得特别喜欢Python的地方是对字符串操作特别的灵活、采取缩进的方式简单明了(虽然百度百科上把这个说成是局限)、以及简单的语法。

Python 和c类似,是顺序进行的,不想visual c++是事件触发不同模块进行的。操作和matlab相似,有编辑窗口,也有一个运行的窗口(交互式解释器),可以编写之后运行,也可以在命令行模式下一条条的完成。

2.基本语法

2.1表达式、数字、/(整除)、%(取余)、**(幂)、#注释;

2.2长整形(后面加L);十六进制和八进制(和c一样0x和0);

2.3变量赋值(x=2)、语句、输入输出(input(“哈哈”)、x=input(””));

2.4 函数:abs()、round()四舍五入

2.5 模块:importmath

3.字符串

3.1 单引号和转义字符

Python中单引号和双引号的作用基本上是一致的,用双引号一般是在所引用的字符串中包含单引号,为了加以区分所以使用双引号。另一个方式就是用/来转义。转义即把后面的一个字符不按照它自身的功能处理而作为普通字符。

3.2 字符串表示

字符串拼接用‘+’,例:x=‘a’ y=’b’ z=x+y

字符串表示:str:把值转换为合理形式的字符串,以便用户理解

repr或‘x’:创建一个字符串,以合法的Python表达式的形式来表示值。

长字符串: 如果字符串太长,可以用三个引号来代替普通的引号。或者在每行末用/转义换行符。

原始字符串:r‘’不会对/做转义处理,会保持字符串内所有字符的原始书写。

3.3 字符串格式

这个和c类似,用格式化操作符(%)来规定诸如长度、精确位、对齐等。

3.4 字符串方法

字符串方法和序列方法类似:对象.方法。常用的有以下几种:

find:在字符串中查找子字符串,返回子字符串所在位置最左端索引,没有则返回-1。

>>>title=’I am achinse’

>>>title.find(‘chi’)

>>>8

注:还可以指定范围:title.find(‘’,0,16),即为从第一个到第16个。

join:在队列中添加元素。

>>>sep=”+”

>>>seq=[‘1’,’2’,’3’,’4’,’5’]

>>>sep.join(seq)

>>>’1+2+3+4+5’

lower:返回字符串的小写版

>>>’I am aChinese’.lower()

>>>I am aChinese

replace:返回某字符串的所有匹配项均被替换之后得到的字符串。

>>>’This is atest’.replace(‘is’,’eez’)

>>>’theez eez atest’

split:join的逆方法,用来将字符串分割成序列

>>>’1+2+3+4’.split(‘+’)

>>>[‘1’,’2’,’3’,’4’]

strip:返回去除两侧(不包括内部)空格的字符串:

>>>’ hh di hh ’.strip()

>>>’hh dihh’

注:还可指定要去除的字符,列为参数即可,注意只去除两侧,中间有也不会去除。

translate:与replace相似,但是只处理单个字符,优势在于可以同时进行多个替换。

3.5 字符串与序列

字符串可以通过list函数转换为序列,序列的操作见下一部分。唯一与标准序列不同的是不可变,不能x[2]=’c’

4.序列

4.1 通用序列操作

索引:如c的下标

分片:[3(起始):6(去除分片后剩余部分的第一位)] [-3:-1] [0:10:2(步长)]

序列相加、相乘:+ *

in:是否在序列中,返回布尔值

长度、最大(小)值:len() max()min()

4.2 列表

4.2.1基本列表操作

元素赋值、分片赋值(很有意思的操作)

4.2.2 列表方法

对象.方法(参数)

append:用于在列表末尾追加新对象

count:统计某个元素在列表中出现的次数

extend:可以在末尾一次性追加另一个序列中的多个值

index:用于从列表中找出某个值第一个匹配项的索引位置

insert:用于将对象插入到列表中

pop:移除列表中的一个元素(默认是最后一个),并返回该元素的值

remove:用于移除列表中某一个值的第一个匹配项

reverse:将列表中的元素反向存放

sort:在原位置进行排序

===============================================================================================

这个假期在学校实验室实习,需要用到python,不过要求不高,需要用python编的程序其实很简单,加上之前有了c语言和delphi的基础,只是大体看了看python的书,这里很想说的是有的时候边学边用,边用边找的学习方式非常有效率!!

python给我最大的感受就是灵活,简单。语法非常贴近自然语言的习惯,而且对于尤其是字符串的处理非常强大,不需要自己再绞尽脑汁像准备ACM那时候那么痛苦,非常喜欢python!!