资讯专栏INFORMATION COLUMN

python3入门与进阶(一)

Panda / 3514人阅读

摘要:语言也被称作为胶水语言,可以混合其他如,等来编程可以把其他语言制作的各种模块尤其是很轻松的联结在一起。会认为子类是一种父类类型。

最近学习了python3的语法,整理记录一下;
语法是编程的先决条件,精通语法是编好程序的必要条件;
导语
给我最大的感觉是:这个语言的编写,居然不使用  { }来控制代码块的区域,而是使用缩进来分割代码块,所以使用python语言编写的代码不能压缩混淆。能够简写就简写,绝不拖泥带水

在python编程的世界里面,广为传颂的名言:Life is Simple ,I Use Python;python语言相对于其他语言来说,最大的特点是:简洁。为什么呢?来看一个变量交互的例子:

# 很多语言中,需要一个临时变量来交换
temp = x
x = y
y = temp

#  在python中
x,y = y,x

python的功能很强大,可以做爬虫,自动化运维与自动化测试,大数据与数据分析(Spark),AI(机器学习 Tensor Flow),Web开发(Flask,Django),脚本处理。还可以跨平台运行,是面向对象的语言,又有动态脚本的特性(和Javascript一样,属于解释型语言,不用编译成二进制文件;编译型语言会编译成二进制文件供机器执行,相对而言运行效率高)。

python语言也被称作为:胶水语言,可以混合其他如C++,Java等来编程;可以把其他语言制作的各种模块(尤其是C/C++)很轻松的联结在一起。

很喜欢的两句话:

#  python 之禅
Simple is better than complex.
简洁胜于复杂;
这和Steve Jobs的苹果系列产品的理念是一致的

Now is better than never. Although never is often better than right now.
做也许好过不做,但不假思索就动手还不如不做;
勤于思考,分析导致问题的原因,不做无用功

编程是为了解决我们的问题而存在的一个工具。

当遇到问题的时候,随手拿起python,编写一个工具,这才是python正确的打开方式

什么是扎实的编程功底:数据结构才是基础

基础语法
代码:是现实世界事物在计算机世界中的映射
写代码:是将现实世界中的事物用计算机语言来描述
在计算机中,怎么样来表示现实世界的事物?

基本数据类型

基本数据类型

Number(数字)

整数:int

浮点数:float

布尔:bool

复数:complex

Str(字符串)

List(列表)

Tuple(元组)

Sets(集合)

Dict(字典)

python3中的浮点数不分精度(单/双),整型不分短和长(short / long);布尔值一定是大写的True / False;列表使用[ ],元组使用( ),集合使用{ },字典使用{ k:v }

type(1+1.0)  # 1.1 float
type(2 / 2) #  1.0  float
type(2 // 2)  #  1  int

a = 123 # 不需要写变量的类型
isinstance(a,int) # True

上面代码里面,type()函数来检查变量的数据类型,也可以使用isinstance来判断一个变量是否属于这个类型;区别在于:

type()不会认为子类是一种父类类型。

isinstance()会认为子类是一种父类类型。

/ :表示除法,结果自动转为float类型;
// :表示整除,求的是整数部分,不会四舍五入;
声明变量不需要在前面写上变量的类型,直接写一个变量名就行,不像其他语言要标明数据类型,或者是写上var/ let/ const

字符串,元组,列表
字符串是不可变的;这三种都是有序的

重复表示

print("icessun"*3)
>>> "icessunicessunicessun"

# 元组的重复 元组里面可以有不同的数据类型  (1,‘1’,True,[1,2,4])
(1,2,3)*3
>>> (1,2,3,1,2,3,1,2,3)

# 在元组后面添加元素 使用append()方法
b = [1,2,3]
b.append(4)
print(b)
>>> [1,2,3,4]

# 元组使用+相加
(1,2,3)+(2,3,4)
>>> (1,2,3,2,3,4)

# 列表的重复
["ice","icess"]*3
>>> ["ice","icess","ice","icess","ice","icess"]

切片操作

[起始位置,长度];

截取从起始位置,长度个字符;
长度负数表示删除从字符串末尾往前数的字符个数;
长度省略表示到末尾;
长度要是超过可截取的位数,以可截取的位数为标准;

a = "icessun"

print(a[0:4])
>>> "ices"

print(a[0:-2])
>>> "icess"

print(a[0:])
>>> "icessun"

print(a[1:-0])
>>> "  "   # 表示截取了一个空字符串

print(a[1:0])
>>> "  "   # 表示截取了一个空字符串

print(a[:-4])
>>> "ice"  

print(a[-4:])
>>> "ssun"   # 起始位置为负数是表示从末尾开始数(从1开始数)到末尾,要是起始位置是负数,那么步长一定省略,否者得到的是空字符串

内部元素的访问

# 都是通过索引来访问的
"icessun"[0]
>>>  "i"

["a","b","c"][0]
>>>  "a"

("a",2,True)[2]
>>> True 

# 都可以使用len()这个函数来求长度

单一的字符串索引操作得到的是字符串,但是一个列表的切片操作得到的是一个列表

a = "icessun"

type(a[0:4])
>>>  

["ice","icess","icessun"][0]
>>> "ice"  # 是字符串

["ice","icess","icessun"][0:2]
>>> ["ice","icess"]  # 是列表

注意

type( (1) )  
>>> 

type( ("a") )  
>>> 

一般来说:( )可以表示元组,也可以表示数学运算的优先级;所以当想表示一个只有一个元素的元组,应该这样:( (1,) );在元素的 后面加上一个逗号;表示一个空的元组:( ( ) )

集合
无序的,不能通过索引访问,里面的元素不重复

判断一个元素是否在集合里面,这个方法也适合上面的数据类型

1 in {1,2}
>>> True

3 not in {1,2,3,4}
>>> False

集合的操作

# 集合的差集  去掉相同的元素,以前面集合为标准,从一个集合里面去掉后面集合特有的元素
{1,2,3}-{2,3}
>>> {1}
{1,2,3}-{4}
>>> {1,2,3}
{1}-{4,2,3}
>>> {1}

# 集合的交集 找两个集合的公有元素
{1,2,3}&{2,3}
>>> {2,3}
{1,3}&{2}
>>> set( )  # 表示空集  len(set()) -----> 0

# 集合的并集 把两个集合合并在一起,按照从前往后的顺序,去掉相同的元素
{1,2,4}|{2,3}
>>> {1,2,4,3}

注意

# 空集合的表示
set()
字典
{ key : value},键值对的形式,类似于Javascript中的对象

key的取值是不可变的类型:int,str,元组

空的字典:{ }

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/41108.html

相关文章

  • python3入门进阶(二)

    摘要:个数相等,顺序对应当在函数参数里面使用的时候,可以在实参里面修改默认值在调用函数传入参数的时候,明确告诉实参,形参给传的是那个实参的值, 变量 python3中变量的定义是不固定类型的(动态),区分大小写 值类型 引用类型 不可变的(值类型) 可变的(引用类型) int (整型) list (列表) str (字符串) set (集合) tuple (元组) di...

    sugarmo 评论0 收藏0
  • Python爬虫学习路线

    摘要:以下这些项目,你拿来学习学习练练手。当你每个步骤都能做到很优秀的时候,你应该考虑如何组合这四个步骤,使你的爬虫达到效率最高,也就是所谓的爬虫策略问题,爬虫策略学习不是一朝一夕的事情,建议多看看一些比较优秀的爬虫的设计方案,比如说。 (一)如何学习Python 学习Python大致可以分为以下几个阶段: 1.刚上手的时候肯定是先过一遍Python最基本的知识,比如说:变量、数据结构、语法...

    liaoyg8023 评论0 收藏0
  • 首次公开,整理12年积累的博客收藏夹,零距离展示《收藏夹吃灰》系列博客

    摘要:时间永远都过得那么快,一晃从年注册,到现在已经过去了年那些被我藏在收藏夹吃灰的文章,已经太多了,是时候把他们整理一下了。那是因为收藏夹太乱,橡皮擦给设置私密了,不收拾不好看呀。 ...

    Harriet666 评论0 收藏0
  • Python

    摘要:最近看前端都展开了几场而我大知乎最热语言还没有相关。有关书籍的介绍,大部分截取自是官方介绍。但从开始,标准库为我们提供了模块,它提供了和两个类,实现了对和的进一步抽象,对编写线程池进程池提供了直接的支持。 《流畅的python》阅读笔记 《流畅的python》是一本适合python进阶的书, 里面介绍的基本都是高级的python用法. 对于初学python的人来说, 基础大概也就够用了...

    dailybird 评论0 收藏0
  • AI开发书籍分享

    摘要:编程书籍的整理和收集最近一直在学习深度学习和机器学习的东西,发现深入地去学习就需要不断的去提高自己算法和高数的能力然后也找了很多的书和文章,随着不断的学习,也整理了下自己的学习笔记准备分享出来给大家后续的文章和总结会继续分享,先分享一部分的 编程书籍的整理和收集 最近一直在学习deep learning深度学习和机器学习的东西,发现深入地去学习就需要不断的去提高自己算法和高数的能力然后...

    huayeluoliuhen 评论0 收藏0

发表评论

0条评论

Panda

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<