本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理

本文章来着腾讯云 作者:python学习教程

Python的特点

解释型语言,无需编译即可运行

提供了交互式命令行

基于对象的编程思想

跨平台和良好的兼容性,在Windows、Mac、Linux上都可运行

简单好用而且功能强大

01 中文编码

很多同学在打开数据时会遇上乱码问题,其原因是字符集的编码问题。Linux和Mac默认的编码集是UTF8,而Windows则是ASCII。如果数据编码的字符集,和你使用Python进行处理时所用的字符集不同,则会出现乱码问题。

另外,我个人的习惯是在Python代码的头部加入以下内容,其中第二行声明了使用UTF8字符集。

#!/usr/bin/env python# coding:utf8

02 变量

Python中的变量可以看作是一个个容器,里面存放着我们需要使用到的值。

Python对变量名的要求和其他语言一样:可以包括英文、数字以及下划线,但不能以数字开头,区分大小写。当然我推荐,变量名用纯英文就很好,并且取一些有意义的名称,便于自己理解每个变量的作用。

Python是一门弱类型的语言,在使用变量时无需声明其类型。Python中的变量包括以下几类:数值、字符串、列表、元组、字典。

03 数值

数值包括整型和浮点型,分别对应整数和浮点数,后者精度更高。

#整型a = 1# 浮点型b = 2.1print a, b

04 字符串

字符串也就是我们经常接触到的文本,可以往里面放任意长度的内容,用单引号或双引号括起来。应当注意,中文以及中文符号只能出现在字符串內,如果在下面第三行中使用了中文输入法的逗号 ,Python将报错。

c = Hello d = 你好 print c, d

使用 + 可以拼接两个字符串。

print c + d

使用 len() 可以得到字符串的长度。

print len( Hello World )

使用切片可以访问字符串中的某个字符或某个片段。

#位置下标从0开始c = Hello World # 打印结果为H,下标为0表示第一个字符print c[0]#打印结果为d,下标为负数表示从后往前数# 所以-1表示倒数第一个字符print c[-1]#使用:返回一个片段,冒号前后分别为开始下标和结束下标# 包括开始下标,但不包括结束下标#因此c[1:5]表示,返回下标从1到4的片段,即第二个到第五个字符print c[1:5]#冒号前后的下标同样可以使用负数#或者不提供,表示从最左端开始或一直到最右端print c[1:-1], c[:5], c[3:]

05 列表

列表好比一条队伍,里面依次存放着多个变量。列表和字符串类似,但字符串中的每个元素都是字符,而列表中的每个元素可以是任意类型的变量。

#使用[]定义一个空列表,使用append()向列表尾部添加一个元素#如果要添加到首部,就用prepend()好了a = []a.append(1)a.append(2.1)a.append( Hello )print a

使用 len() 可以获得列表的长度。

print len(a)

列表元素的按下标访问和赋值等操作,和字符串都是类似的。

print a[1], a[-1]a[1] = 100print a

使用 del 删除列表中的某个元素。

del a[0]print a

06 元组

元组和列表类似,唯一的不同是元组中的元素在初始化之后不能再更改,因此可以理解成一个只读的变量。

#使用()定义一个元组a = (1, 2.1, Hello )# 尝试修改元组中的元素会报错a[0] = 100

07 字典

字典是一种极为重要的变量类型,使用一个key来访问相应的value,即一种键值对的数据形式。

#使用{}定义一个字典a = {}# 使用key来赋值valuea[ k1 ] = 1a[ k2 ] = 2.1a[ k3 ] = Hello

所以能够总结出字典和列表的不同。列表中的元素是有序对等的,所以是用下标来赋值和访问,而字典中的元素是无序的,所以是用key来操作相应value。

#也可以在定义字典和列表的同时进行赋值li = [1, 2.1, Hello ]di = { k1 : 1, k2 : 2.1, k3 : Hello }

使用 has_key() 判断字典中是否有某个key。

print di.has_key( k4 )

如果访问不存在的key,Python将会报错。在赋值的时候,如果key已经存在,则会用新的value覆盖已有的value。

08 注释

被注释的代码将不会运行,可以看作是写给自己和其他程序猿阅读的一些笔记和说明,提高代码可读性。

#这里是单行注释 这里是很多行注释

在Sublime中,选中需要注释的内容,按Ctrl+/即可完成注释。

09 保留字符

在Python中,有一些字符串具有某些特定功能,如 import 、 class 等。我们在选择变量名时,应注意避开这些保留字符。

#以下变量赋值将报错import = 1

10 行和缩进

在Python中,代码块的边界不是通过大括号等符号进行显式划分,而是通过行的缩进实现的。连续相同缩进水平的代码处于同一个代码块,在使用 for 、 while 、 if 、 try 等语法时需要注意每行代码的缩进。

python有哪些方面_Python学习中最基本的内容,看看有哪些需要我们学习的相关推荐

  1. python 在线编程 实现_Python从0到1:让你达到独自实现深度学习项目的水准

    SIGAI 4P计划 欢迎你申请SIGAI Pick Pearl Python Plan,简称"4P计划",我们的目标是在100天内,向1000名合格申请者[免费]提供SIGAI& ...

  2. python opencv resize函数_Python OpenCV中的resize()函数的使用

    改变图像大小意味着改变尺寸,无论是单独的高或宽,还是两者.也可以按比例调整图像大小. 这里将介绍resize()函数的语法及实例. 语法 函数原型 cv2.resize(src, dsize[, ds ...

  3. python sql解析引擎_python SQLAlchemy 中的Engine详解

    先看这张图,这是从官方网站扒下来的. Engine 翻译过来就是引擎的意思,汽车通过引擎来驱动,而 SQLAlchemy 是通过 Engine 来驱动,Engine 维护了一个连接池(Pool)对象和 ...

  4. python getitem方法理解_Python类中方法getitem和getattr详解

    1.getitem 方法 使用这个方法最大的印象就是调用对象的属性可以像字典取值一样使用中括号['key'] 使用中括号对对象中的属性进行取值.赋值或者删除时,会自动触发对应的__getitem__. ...

  5. 《强化学习周刊》第26期:UCL UC Berkeley发表深度强化学习中的泛化研究综述、JHU推出基于强化学习的人工决策模型...

    No.26 智源社区 强化学习组 强 化 学  习 研究 观点 资源 活动 关于周刊 强化学习作为人工智能领域研究热点之一,其研究进展与成果也引发了众多关注.为帮助研究与工程人员了解该领域的相关进展和 ...

  6. python语言的语法_Python语言 中的一些特殊语法

    本文主要向大家介绍了Python语言 中的一些特殊语法,通过具体的内容向大家展示,希望对大家学习Python语言有所帮助. 1.高阶函数 python支持函数式编程,它内置了一些特殊函数,这些函数具有 ...

  7. python 插补数据_python 2020中缺少数据插补技术的快速指南

    python 插补数据 Most machine learning algorithms expect complete and clean noise-free datasets, unfortun ...

  8. python定制框架知识点_python框架中flask知识点总结

    有很久没有更新我的博客了,在学习flask去了,别人都说flask不难,其实现在我也这么觉得,但是在刚接触的时候还是有点吃力的. 在学习的过程中查阅了不少,也了解了许多,今天想做个总结...以免觉得学 ...

  9. python训练模型测试模型_python 机器学习中模型评估和调参

    在做数据处理时,需要用到不同的手法,如特征标准化,主成分分析,等等会重复用到某些参数,sklearn中提供了管道,可以一次性的解决该问题 先展示先通常的做法 import pandas as pd f ...

最新文章

  1. QNX Hypervisor管理程序
  2. CoreCLR系列随笔 之ClrJit项目之alloc.cpp文件分析(1)
  3. 在哪里学python好-为什么要选择学python,亮点在哪呢?
  4. 2017蓝桥杯省赛---java---A---1(迷宫)
  5. 培养杰出程序员的捷径
  6. 【Nacos】Nacos MySQL 配置后无法登录 愚蠢的问题
  7. 18.ChainOfResponsibility-职责链模式
  8. 2013年国家计算机等级考试c语言考试真题,2013年3月计算机等级考试二级C语言真题及答案.doc...
  9. linux代码诊断有没有link,Linux下判断网线是否插入的代码
  10. Python元组练习题
  11. EDK2 UDK2018的环境搭建
  12. mysql删表重来_BeetlSQL自定义NameConversion去除Pojo和表前缀
  13. 关于学籍管理系统的可行性研究报告
  14. Word2016更改不同的级别标题序号:如2.2 ,2.2.1类标题序号
  15. Lumerical官方案例、FDTD时域有限差分法仿真学习(八)——光纤布拉格光栅(Fiber Bragg gratings)
  16. pancakeswap 开盘抢跑机器人 (附代码)
  17. JAVA基础之Http协议
  18. Android Protobuf应用及原理
  19. mysql联合索引如何创建
  20. stp实验心得_STP 实验

热门文章

  1. 腾讯数据库专家雷海林分享智能运维架构
  2. nginx启动期做了哪些事
  3. 爬虫 spider05——使用httpclient发送get请求、post请求
  4. mybatis实现CRUD(不使用DAO)
  5. 数据库设计原则:应该使用软删除吗?
  6. 【Java文件操作(六)】借助内存复制图片:ByteArrayOutputStream\ByteArrayInputStream\FileOutputStream\FileInputStream辨析
  7. BJUT算法设计与分析考试真题 无答案
  8. leetcode 67. 二进制求和(C语言)
  9. 小知识系列:数据库的主键和外键
  10. 在Java语言里 ==和equals的区别