python_3 基础(1)

数字

二进制 0b开头  
八进制 0o开头  
十六进制 0x开头  
十进制 如10,没特别区分
其他进制转二进制 bin() 如 bin(1) --> '0b1'
其他进制转十进制 int() 如 int(0b1) --> 1
其他进制转十六进制 int() 如 hex(1) --> '0x1'
其他进制转八进制 int() 如 oct(1) --> '0o1'
bool布尔类型:真/假(True/False) True=1/False=0 布尔类型属于数字这个大分类下
bool('abc') --> True
bool('') --> False
bool(None) --> False
除了0可以表示False,空值都是False
complex 复数:数字后面加j表示复数 52j表示复数

字符串

str字符串:单引号/双引号/三引号表示字符串 如必须要在单引号中显示单引号,则可以这样'let\'s go' 
\ 转义字符
\n 表示回车/换行符
三引号用来写长字符串
三引号+换行符例子(单引号和双引号+换行符同例):
print('''Hello\nHello\nHello''')
Hello
Hello
Hello
单引号和双引号换行方式:
'Hello\
 World'
'Hello World'

转义字符

特殊的字符,某些无法'看见'的字符,某些与语言本身语法有冲突的字符
\n 换行符
\' 单引号
\t 横向制表符
\r 回车
如何在print中输出\n:
print("Hello \\n World") --> Hello \n World
print(r"Hello \n World") --> Hello \n World
print(R"Hello \n World") --> Hello \n World
当字符串前面加了r/R,则说明这个字符串不是一个普通字符串,而是一个原始字符串,原始字符串可以以理解为所见则所得,不对字符串里面的转义字符做处理

字符串运算

字符串字符从0算起,最后一位为-1,以此类推,空字符也是字符
切片(截取)的时候要切片到你需要的字符的下一位
-2表示字符串往回数的第二个字符(输出的结果不包含倒数第二个字符),以此类推
切片(截取)的时候第二位留空则会从第一位截取到最后一位
切片(截取)的时候第二位大于字符串的总体长度时,会截取到最后一位
从后面倒着切片(截取)的时候,可以把复数填到第一位
'Hello '+'World' --> 'Hello World'
'Hello'*3 --> 'HelloHelloHello'
"Hello World"[0] --> 'H'
"Hello World"[-1] --> 'd'
"Hello World"[6] --> 'W'
"Hello World"[-5] --> 'W'
"Hello World"[0:5] --> 'Hello'
"Hello World"[0:-2] --> 'Hello Wor'
"Hello World"[6:] --> 'World'
"Hello World"[6:11] --> 'World'
"SyntaxError: multiple statements found while compiling a single statement"[-9:] --> 'statement'

数据类型

列表-list

[1,2,3,4,5,6] 里面的内容可以是字符串或数字或字符串和数字的混合或包含布尔类型或包含列表
如何访问列表中的元素 
[1,2,3,4][1] --> 2  [1,2,3,4][0:2] --> [1, 2]
当访问单个列表元素时,返回的是单个字符串,当访问多个列表元素时,返回的是列表
嵌套列表 [[1,2,3,4],[5,6,7,8],[1,2,3,4],[5,6,7,8]]
列表中的元素操作
列表相加 [1,2]+[3,4] --> [1, 2, 3, 4]
列表乘法 [1,2]*2 --> [1, 2, 1, 2]

元组-tuple

(1,2,3,4) --> (1, 2, 3, 4)
(1,'2',True) --> (1, '2', True)
如何访问元组中的元素
(1,2,3,4)[0] --> 1
(1,2,3,4)[0:2] --> (1, 2)
元组中的元素操作
(1,2,3,4)+(5,6,7,8) --> (1, 2, 3, 4, 5, 6, 7, 8)
(1,2,3,4)*3 --> (1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4)
定义只有一个元素的元组
((1,)) --> (1,)
type((1,)) --> <class 'tuple'>
定义空元组
() --> ()
type(()) --> <class 'tuple'>

序列

str/list/tuple 都可以叫做序列,序列里面的每个元素都会有一个序号,利用序号提取单个元素或者切片
判断元素是否在列表中
3 in [1,2,3,4,5] --> True
6 in [1,2,3,4,5] --> False
3 not in [1,2,3,4,5] --> False
查看序列中共有几个元素
len([1,2,3,4,5,6]) --> 6
len("Hello World") --> 11
查看序列中最大和最小的元素(字符串的最大最小遵循ASCII码规则)
max({1,2,3,4,5,6}) --> 6
min([1,2,3,4,5,6]) --> 1
max("Hello World") --> 'r'
max("hello world") --> 'w'
min("helloworld") --> 'd'
min("HelloWorld") --> 'H'

字符编码

ASCII码 
ord('w') --> 119
ord('d') --> 100
ord(' ') --> 32

集合-set

特点为无序,不能用序号提取元素,不能用序号切片,重复元素会被剔除
{1,2,3,4,5,6} --> {1, 2, 3, 4, 5, 6}
长度判断
len({1,2,3,4,5,6}) --> 6
判断元素是否在集合中
1 in {1,2,3,4,5,6} --> True
1 not in {1,2,3,4,5,6} --> False
把1集合中的2集合的元素剔除,求两个集合的差集 {1,2,3,4,5,6} - {3,4} --> {1, 2, 5, 6}
查询两个集合共有的元素,求两个集合的交集 {1,2,3,4,5,6} & {3,4} --> {3, 4}
两个集合合并成一个并且元素不重复,求两个集合的并集 {1,2,3,4,5,6} | {3,4,7,8} --> {1, 2, 3, 4, 5, 6, 7, 8}
定义一个空的集合要用到关键字set type(set()) --> <class 'set'>

字典-dict

由key value构成,字典由很多的key和value构成,也是一个集合,无序,字典的key不能重复,字典的key可以是数字
{1:1,2:2} --> {1: 1, 2: 2}
{"Q":1,"W":2,"E":3,"R":4} --> {'Q': 1, 'W': 2, 'E': 3, 'R': 4}
根据key值来访问value值
{"Q":1,"W":2,"E":3,"R":4}["Q"] --> 1
value可以是任何数据类型,包括int str float list set dict
key必须是不可变的类型,包括int str set
空的字典使用花括号表示

总结

69160-hc0zcuurz8v.png


pythonfoundationstudiedpython基础python笔记python学习

我来吐槽

*

*