python基础

Python语言是一种解释型、面向对象、动态数据类型的高级程序设计语言

开发者:Guido van Rossum(人称龟叔)

基本概念

1.变量

变量名必须是大小写英文字母、数字或下划线 _ 的组合,不能用数字开头,并且对 大小写敏感

关键字不能用于命名变量,如and、as、assert、break、class、continue、 def、del等

变量名和想要赋予变量的值通过赋值运算符 =连接起来,变量的赋值操作就完 成了声明和定义的的过程

如:i=1

同一变量可以反复赋值,而且可以是不同类型的变量,这也是Python语言称之 为动态语言的原因

常常约定使用大写字母组合的变量 名表示常量,也有不要对其进行赋值”的提醒作用

如:PI=3.1416926

2.注释

、# 单行注释

'''注释的内容 ''' 或"""注释的内容 """ 多行注释

3.print函数

在Python 2.x版本中,同时兼容 print 和 print()

在Python 3.x版本中,print 函数为带括号的 print()

如果想要看变量的值,则直接在 print 后面加上变量名即可。如 果是想要输出提示信息,如一句话,那我们需要将提示信息用 ‘ 单 引号包裹起来(这使得内容构成一个字符串)

逗号,:隔开变量与其他剩余内容,则print 在输出时会依次 打印各个字符串或变量,遇到逗号,时会输出一个空格

print 函数不仅可以打印变量值,也可以打印计算结果

4.数据类型

Python语言的数据类型包括

整型(正负)、

浮点型(如果是非常大或者非常小的浮点数,就需要 使用科学计数法表示,用 e 代替 10)、

字符串(两个单引号或两个双引号包裹起来的文本)、(比如 \n 表示换行, \t 表示制表符,Python还允许用 r“ ” 表示“ ”内 部的字符串默认不转义)

布尔型(只有 TrueFalse 两种值)& 和 |和not(非)

空值 :None

5.算术运算符

6.类型转换

函数 int()、float()、str() 和 bool() 分别用于将变量转换 成整型、浮点型、字符串和布尔型变量

注意:汉字和字符不能转成数字,除非这个字符由数字构成

只有在变量值为 0 或0.0时,bool 转换的结果才为 False:

除了使用 type() 外,我们还可以使用 isinstance() 来获得数 据类型

如:bool(isinstance('a',str))

True

数据容器

1.列表

列表(list)是一个有序的序列结构,序 列中的元素可以是不同的数据类型

将列表中的各元素用逗号分隔开,并用中括号将所有元素包裹起来

如:

插入

使用append()方法添加元素,该方法会在列表末尾位置添加数据元素

如:list1.append('bfy')

删除

remove()方法适用于知道要删除的值的情况,当我们不知道具体元素值, 但是知道元素的索引位置时,我们可以使用 del 函数配合列表索引,删 除索引位置的元素或者使用 pop()方法

如:list1.remove('bfy')

​ del list1[0]

​ list1.pop(0)

通过 insert() 方法在指定的索引位置添加数据元素

如:list1.insert(1,'123')

列表长度len()方法

len(list1)

列表索引

Python语言中所有的索引都是从 0 开始计数的,如果列表中有 n 个元素, 那么最后一个元素的索引是 n-1 ,反过来从-1开始

列表切片

列表名称[起始索引位置 :最后索引位置 :步长]

切片操作需要提供起始索引位置和最后索引位置,然后用冒号 : 将两者分开

如果未输入步长,则默认步长为 1 (相当于间隔几个去切)

索引的位置含头不含尾

列表中的元素也可以是列表,这样可以将列表看成更高维的数组

可以逆向切片

如:list1[0:3] 切出第一个和第三个数据

2.元组

元组(tuple)数据结构与列表类 似,其中元素可以有不同的类型

但是元组中的元素是不可变的, 即一旦初始化之后,就不能够再 做修改(报错:元组对象不支持 赋值)

只有查询,与列表的区别是元组是小括号

3.字典

字典的创建使用大括号 {} 包含键值对,并用冒号 : 分隔键和值,形成 键:值 对

字典中的数据元素是无序的,并不会按照初始化的顺序排列。不同键所 对应的值可以相同,但是字典中的键必须是唯一的

dict1= {1:'aa', 2:'bb', 3:'cc'}

字典的元素访问(以及插入、设置)方式与列表和元组一样。不同的是,列表和元组 的索引号是按照顺序自动生成,而字典的索引号是键

可以通过 in 判断是否存在某个键,其语法跟在列表和元组中判断是否存在 某个值是相同的

如果不太确定字典中有哪些键或者值,我们可以使用 keys() 方法或者values()方 法

dict1.keys()

dict1.values()

在有些情况下,我们需要取出字典中的键值对用于下一步的分析,此时可以使 用 items() 方法,该方法将返回所有键值对,并将其保存在一个元组列表(列表 中的元素为元组)中

字典的删减有三种方法

使用 del 函数对单一元素或者整个字典进行删除

使用 pop() 方法删除单一元素

使用 clear() 方法清空词典的所有元素

4.集合

集合(set)是一种无序集,它是一组键的集合,不存储值在集合中,重复的键是不被允许的。集合可以用于去除重复值

集合也可以进行数学集合运算,如并、交、差以及对称差等。

集合的创建有两种方式:使用 set() 函数或者使用大括号{}

需要注意的是,创建空集合,必须使用 set() ,而不是{},因为{}表示创建一个 空的字典

控制结构

1.if选择语句

格式

if 判断条件:

​ 执行语句

2.for循环语句

格式

for 变量 in 序列:

​ 执行语句

利用for循环和zip()函数创建字典

zip()函数用于将多个序列(列表、元组等)中的元素配对,产生一个如 [(列表1元素,列表2元素),(,)] 的新的元组列表;for循环用于重复执行将值放入键中的操作。

如:

a = [1, 2, 3, 4, 5]
b = ['a', 'b', 'c', 'd', 'e']
dict={}
for key,value in zip(a,b):
dict[key]=value
print(dict)

3.while循环结构

python的基本运用的更多相关文章

  1. Python中的多进程与多线程(一)

    一.背景 最近在Azkaban的测试工作中,需要在测试环境下模拟线上的调度场景进行稳定性测试.故而重操python旧业,通过python编写脚本来构造类似线上的调度场景.在脚本编写过程中,碰到这样一个 ...

  2. Python高手之路【六】python基础之字符串格式化

    Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...

  3. Python 小而美的函数

    python提供了一些有趣且实用的函数,如any all zip,这些函数能够大幅简化我们得代码,可以更优雅的处理可迭代的对象,同时使用的时候也得注意一些情况   any any(iterable) ...

  4. JavaScript之父Brendan Eich,Clojure 创建者Rich Hickey,Python创建者Van Rossum等编程大牛对程序员的职业建议

    软件开发是现时很火的职业.据美国劳动局发布的一项统计数据显示,从2014年至2024年,美国就业市场对开发人员的需求量将增长17%,而这个增长率比起所有职业的平均需求量高出了7%.很多人年轻人会选择编 ...

  5. 可爱的豆子——使用Beans思想让Python代码更易维护

    title: 可爱的豆子--使用Beans思想让Python代码更易维护 toc: false comments: true date: 2016-06-19 21:43:33 tags: [Pyth ...

  6. 使用Python保存屏幕截图(不使用PIL)

    起因 在极客学院讲授<使用Python编写远程控制程序>的课程中,涉及到查看被控制电脑屏幕截图的功能. 如果使用PIL,这个需求只需要三行代码: from PIL import Image ...

  7. Python编码记录

    字节流和字符串 当使用Python定义一个字符串时,实际会存储一个字节串: "abc"--[97][98][99] python2.x默认会把所有的字符串当做ASCII码来对待,但 ...

  8. Apache执行Python脚本

    由于经常需要到服务器上执行些命令,有些命令懒得敲,就准备写点脚本直接浏览器调用就好了,比如这样: 因为线上有现成的Apache,就直接放它里面了,当然访问安全要设置,我似乎别的随笔里写了安全问题,这里 ...

  9. python开发编译器

    引言 最近刚刚用python写完了一个解析protobuf文件的简单编译器,深感ply实现词法分析和语法分析的简洁方便.乘着余热未过,头脑清醒,记下一点总结和心得,方便各位pythoner参考使用. ...

  10. 关于解决python线上问题的几种有效技术

    工作后好久没上博客园了,虽然不是很忙,但也没学生时代闲了.今天上博客园,发现好多的文章都是年终总结,想想是不是自己也应该总结下,不过现在还没想好,等想好了再写吧.今天写写自己在工作后用到的技术干货,争 ...

随机推荐

  1. 使用try_catch_finally处理流中的异常和JDK7流中的异常处理

    在jdk1.7之前使用try_catch_finally处理流中的异常 格式: try{ 可能会出现异常的代码 }catch(异常类变量 变量名){ 异常的处理逻辑 }finally{ 一定会执行的代 ...

  2. LyScript 获取上一条与下一条指令

    LyScript 插件默认并没有提供上一条与下一条汇编指令的获取功能,当然你可以使用LyScriptTools工具包直接调用内置命令得到,不过这种方式显然在效率上并不理想,我们需要在LyScript插 ...

  3. MySQL 的prepare使用中的bug解析过程

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 目录 一.问题发现 二.问题调查过程 三.问题解决方案 四.问题总结 一.问题发现 在一次开发中使用 MySQL PREP ...

  4. 结束语句之 break

    C 语言自学之 break Dome1: 找出0-50之间的所有素数,所谓素数就是只能被1和它本身整除的数字,比如:7,13,23等.                运行结果: 2  3  5  7 ...

  5. Java SE 9 多版本兼容 JAR 包示例

    Java SE 9 多版本兼容 JAR 包示例 作者:Grey 原文地址:Java SE 9 多版本兼容 JAR 包示例 说明 Java 9 版本中增强了Jar 包多版本字节码文件格式支持,也就是说在 ...

  6. 【ARK UI】HarmonyOS ETS如何创建PixeMap并显示Image组件上

    ​参考资料 图片处理 Context模块 api讲解 image.createPixelMap createPixelMap(number: fd, options: InitializationOp ...

  7. HTTP 的 Content-Type 及其媒体类型(MIME)

    Content-Type Content-Type 代表 HTTP 携带的文件类型,决定文件接收方或发送方将以什么形式.什么编码读取这个文件.下图,load.gif 的媒体类型就是 image/gif ...

  8. 理想汽车 x JuiceFS:从 Hadoop 到云原生的演进与思考

    理想汽车在 Hadoop 时代的技术架构 首先简单回顾下大数据技术的发展,基于我个人的理解,将大数据的发展分了4个时期: 第一个时期: 2006 年到 2008 年.2008 年左右,Hadoop 成 ...

  9. 圆形谷仓Circular Barn_Silver---(DP优化 / )队列 + 贪心(复杂度O(2n))---DD(XYX)​​​​​​​的博客

    目录 小数据 大数据 小数据 题目描述 农夫约翰有一个圆形的谷仓,谷仓分成了环形的n(3≤n≤1000)个房间,编号为1 , 2 , -- .每个房间有三个门,两个门通往两个相邻的房间,第三个门朝外. ...

  10. C#基础_类的声明

    新建Clerk类. using System; using System.Collections.Generic; using System.Linq; using System.Text; usin ...