Python基础入门语法1
PY的交换值的方法
x.y = y.x
PY既具有动态脚本的特性,又有面向对象的特性
PY的缺点:
- 编译型的语言(C++,C):通过编译器进行编译成机器码,越接近底层,开发效率低
解释型代码:PY和JS 通过解释器进行解释,相对于编译型的慢
基本的数据类型
Number:数字 整数int(没有short int long的区分) 浮点数float(py中没有单精度和双精度区分)
Bool型:false和true型
2/2=1.0在py中得到的是浮点型的
2//2 是整除的形式 比如1//2就得0
0b是py中的二进制识别符号,bin()是转换到二进制的方法
0o 是py中的八进制识别符号
0x 是16进制
转十进制的方法是int(0b11)
转十六 hex()
转八进制 oct()
bool(0) 为false 数字类里仅有这个为false
单引号和双引号都可以表示字符串
为啥里面用两种的引号,就是保证能够识别中间的文字符号
转义字符\r回车
要把一个字符转化成文本 即加一个\
一个起点一个终点得到一个字符串 用冒号来做
原始字符串的用法
列表的基本操作和字符串的是一致的
元组的定义tuple (n1,n2,n3)
元组的访问 (n1,n2,n3)[n] 返回的是元素
(n1,n2,n3)[n,m]返回的元组
元组与列表的相同点
1)元素可以时不同的数据类型
2)访问方式相同
3)都可以进行加法和乘法
>>> (1,'-1',True)[0] 1
>>> (1,'-1',True)[0:2] (1, '-1')
>>> (1,'-1',True)+(8,'hi') (1, '-1', True, 8, 'hi')
单一元组是元组内部的元素的本身的类型
str,list,tuple都可视为序列
str list tuple都是序列(python中组的概念)
通用:
截取单个字符(序列中每个元素都会被分配一个序号)
切片 [n:m]或者[n:m:b]从第n+1个到m个,中间隔b-1个字符
验证序列中是否有某个元素,a (not) in 序列 => a是否不在列表中,返回True/False
len(序列) 判断序列中的元素个数
max(序列) 判断序列中的最大值
min(序列) 判断序列中的最小值
ord( ) 查看 ascll码
集合的无序性{1,2,3}(0)是错误的,因为是无序的
集合:{1,2,3} 无序性 不重复性 len({1,2,3}) 得到集合的长度 判断元素是否存在: 1 in {1,2,3} 集合与集合之间的运算: 差集:{1,2,3,4} - {1,2} 得到{3,4} 交集:{1,2,3,4} & {1,2} 得到{1,2} 合集:{1,2} | {2,3,4} 得到{1,2,3,4} 定义一个空的集合: type({}) 得到<class 'dict'> type(set()) 得到<class 'set'>
字典 dict
一个字典可以由很多key和value,集合类型(set),不是序列
用花括号定义 {key1:value1, key2:value2...}
字典也是无序的
通过key来访问
字典通过key来访问value => { }[key]
字典的key不能重复,重复不会报错,但是会覆盖之前重复的key对应的value
字典的key必须是不可变的类型:int、str、元组tuple(列表list、集合set不可以)
字典的value可以是任意类型,没有特别限制:str、int、float、list、set、dict等
空的字典{ }
Py的切片
其含义就是从操作对象中取出一部分的概念
小结PY的数据类型
变量:A =[1,2,3,4] 变量名称的可读性要强
变量的命名规则
1.变量不能以数字开头。
2.变量名可以是数字,字母,下划线组成的字符
3.不可以是python中的保留关键字
3.python区分大小写,A,a它们不是一同个的变量
列表的可变和元组的不可变
列表值可变 但在内存地址中的位置不变
元组值不可变
a=[1,2,3]
c=(1,2,3)
a.append(4)=[1,2,3,4]此函数用于在末尾追加元素
c.append(4)追加元素 报错
能用tuple就用元组 保证了代码不会被修改 最好不用列表list
a=(1,2,3,[1,['a','b','c'],4])
a[3]=>[1,2,4]
a[3][2]=>4
a[3][1][1]=>'b' 可以实现多维嵌套表达
如果对元组中某个元素进行赋值
eg:
a=(1,2,3,[1,2,4])
a[2]='3' 报错
a[3][2]='4' 可行(改变元组中的列表是可行的)
Python赋值运算符:(意义先做运算后赋值,重点是“赋值”)
= c = a + b 将 a + b 的运算结果赋值为 c
+= c += a 等效于 c = c + a
-= c -= a 等效于 c = c - a
*= c *= a 等效于 c = c * a
/= c /= a 等效于 c = c / a
%= c %= a 等效于 c = c % a
**= c **= a 等效于 c = c ** a
//= c //= a 等效于 c = c // a
bool类型是Number类型的一种
b=1
b+=b>=1
print(b)
2
print(b>=1)
True
b+=True
b=b+True
int(True)
1
print(b)
4
运算符有优先级
比较单个字符时'a','b',比较的是字符对应的Ascll码,可以通过ord()函数进行查看
比较字符串‘abc’、‘abd’,比较字符串中的每一个字母单独作比较,不可以通过ord()函数查看
字符串、列表、元组都可以进行比较,也是每个元素单独一次进行比较,相同则比较下一位,不同则较大的元素所在的数据大(1,2,3)<(1,3,2)True
逻辑运算符
And是且
Or是或
Not是非
成员运算符(in、not in)
是判断一个元素是否在一组元素里
>>> a=1
>>> a in [1,2,3,4,5]
True
>>> b=6
>>> b not in [1,2,3,4,5]
True
字典(dict)的成员运算符,只比较key的值而不是value的值。
>>> b='a'
>>> b in {'s':1}
False
>>> b=1
>>> b in {'s':1}
False
>>> b='s'
>>> b in {'s':1}
True
is与==区别:
关系运算符比较的是两个变量值是否想的。而身份运算符比较的是两个变量的身份是否相等。</pre>
如何判断变量的值、身份与类型
1、对象的三个特征:值value(关系运算符)、身份id(is/not is)、类型(type)/isinstance(a,str)可以判断基类和子类的类型,其中第二个参数可以是单独的类型,也可以是元祖形式的所有类型序列
a='123'
isinstance(a,(int,str,list,float))
True
isinstance(a,str)
True
2、python一切都是对象
位运算符:&(按位与),|(按位或),^(按位异或),~(按位取反),<<(左移动),>>(右移动)
位运算:就是把其他进制转换成二进制进行按位与、或、非等的运算
例如:2 & b 转换成二进制的为10 & 11,1与1对比和0与1对比得出的结果为10转换成十进制结果为2。&运算符的定义两个二进制对比都为1结果为1,两个结果中有一个为0或者两个都为0则为0
>>> a = 2
>>> b = 3
>>> a & b
2
|运算符的定义:二进制对比中只要有一个1结果就为1
>>> a = 2
>>> b = 3
>>> a | b
3
单行注释:#(ctrl+/)
多行注释:''' '''(alt+shift+A)
If else 语句的写法
Py中接受命令行的输入的函数是input()
Python基础入门语法1的更多相关文章
- python基础入门语法和变量类型(二)
列表 列表是 Python 中使用最频繁的数据类型,它可以完成大多数集合类的数据结构实现,可以包含不同类型的元素,包括数字.字符串,甚至列表(也就是所谓的嵌套). 和字符串一样,可以通过索引值或者切片 ...
- Python基础入门教程
Python基础入门教程 Python基础教程 Python 简介 Python环境搭建 Python 基础语法 Python 变量类型 Python 运算符 Python 条件语句 Python 循 ...
- Python基础入门教程,Python学习路线图
给大家整理的这套python学习路线图,按照此教程一步步的学习来,肯定会对python有更深刻的认识.或许可以喜欢上python这个易学,精简,开源的语言.此套教程,不但有视频教程,还有源码分享,让大 ...
- Python怎么样入门?Python基础入门教程
给大家整理的这套python学习路线图,按照此教程一步步的学习来,肯定会对python有更深刻的认识.或许可以喜欢上python这个易学,精简,开源的语言.此套教程,不但有视频教程,还有源码分享,让大 ...
- [新手必备]Python 基础入门必学知识点笔记
Python 作为近几年越来越流行的语言,吸引了大量的学员开始学习,为了方便新手小白在学习过程中,更加快捷方便的查漏补缺.根据网上各种乱七八糟的资料以及实验楼的 Python 基础内容整理了一份极度适 ...
- 六. Python基础(6)--语法
六. Python基础(6)--语法 1 ● Python3中, Unicode转字节的方法 print(bytes("李泉", encoding = 'utf-8')) prin ...
- 五. Python基础(5)--语法
五. Python基础(5)--语法 1 ● break结束的是它所在的循环体, continue是让它所在的循环体继续循环 # 打印: 1 10 2 10 3 10 4 10 5 10 6 10 7 ...
- 四. Python基础(4)--语法
四. Python基础(4)--语法 1 ● 比较几种实现循环的代码 i = 1 sum = 0 while i <= 10: # 循环10-1+1=10次 sum += i i ...
- 三. Python基础(3)--语法
三. Python基础(3)--语法 1. 字符串格式化的知识补充 tpl = "我是%s,年龄%d,学习进度100%" %('Arroz',18) print(tpl) # 会提 ...
随机推荐
- AcWing STL初步学习
vector, 变长数组,倍增的思想 size() 返回元素个数 empty() 返回是否为空 clear() 清空 front()/back() push_back()/pop_back() beg ...
- 线段树+扫描线 NAIPC 2019 Intersecting Rectangles
你看看你有多菜,一点线段树的小小的运用,就不会写了: 题意:如果矩阵有交集,输出1,否则输出0(不包含内嵌): 思路:本题求交集,还得不包括内嵌的情况: 做过一道是求面积的题.跟这道类似,但在这里定义 ...
- python+tkinter+动画图片+爬虫(查询天气)的GUI图形界面设计
1.完整代码: import time import urllib.request #发送网络请求,获取数据 import gzip #压缩和解压缩模块 import json #解析获得的数据 fr ...
- Homebrew安装和Mac使用
软件安装 1.Homebrew安装 ruby环境: curl -sSL https://get.rvm.io | bash -s stable 官网方式: /usr/bin/ruby -e & ...
- HahMap相关问题
概述 文章对HashMap的部分细节进行介绍,JDK1.7之前有可能出现环形表的问题,而1.7之后进行了改进,文章对环形表现象的出现进行了解析,然后对HashMap注意的几个问题进行了解答. Hash ...
- Java查询数据库
创建数据库 创建 user 数据库 创建 teacher 数据库 teacher表的user_id列与user表的id列建立一对多连接,user_id作为外键. Java编程查询数据库 向user数据 ...
- Linux中Oracle启动侦听报错TNS:permission denied的解决方法
最近在开发环境 oracle 启动侦听的时候,出现了 TNS:permission denied 的问题,通过网上和咨询朋友,最终找到了解决方案,现在共享出来给有需要的朋友. [oracle@orac ...
- vtk学习记录(一)——vtk工程配置与生成
前言 图形图像这块儿,最近因为工作需要接触的相对多了点儿,精力基本上也都投入了这块儿,搞的天天要死要活,毕竟我一个.net的突然来到cxx的世界,也是很苦恼的,也是头一次见到新建工程就需要配置并且解决 ...
- Django框架之Filters(过滤器)、母版的使用
在Django的模板语言中,通过使用 过滤器 来改变变量的显示. 过滤器的语法: {{ value|filter_name:参数 }} 使用管道符"|"来应用过滤器. 注意事项: ...
- 本机修改虚拟机linux中的代码文件
最近在研究swoole这个框架,好不容易装了一个swoole,为了开发方面,需要早宿主机和虚拟机之间文件共享,一开始使用vmware tool可以实现共享,但是只能在linux中看到win共享的文件, ...