资料链接:
链接:https://pan.quark.cn/s/5ef2a1dccd33
提取码:A2Z9
一.快捷键
ctrl + s 保存
ctrl + / 注释和取消注释
ctrl + d 可以复制当前行到下一行
ctrl + alt + L 可以将程序自动格式化成 符合PEP8 编码规范的格式
二.输出
定义变量
name = "蓝天"
robot_name = "小麦"
方法一
print('你好,'+name+',我是'+robot_name)
方法二
用{}表示变量,然后通过format函数传入要填入的变量
print('你好,{},我是{}'.format(name,robot_name))
方法三
在字符串前加上f,然后在字符串中只用{name}自动拼接内容
print(f'你好,{name},我是{robot_name}')
方法四
print接受多个参数,自动打印出来,并且默认用空格隔开
print('你好,',name,',我是',robot_name)
三.变量命名规则
-
第一个字母必须是英文字母[A-Z a-z]或下划线 [ _ ],所以数字不能开头
-
从第二个字母起(如果有),必须是英文字母、下划线、数字
[ A-Z、a-z、 0-9、 _ ]
变量名称约定
-
变量名区分大小写
4.关键字(keywords)
-
计算机编程语言中保留的标识符称为关键字, 关键字不能当成变量名使用
-
python中的部分关键字
False await else import pass
None break except in raise
True class finally is return
and continue for lambda try
as def from nonlocal while
assert del global not with
async elif if or yield
四.变量类型
在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。
python中的数据类型
-
字符串 str
-
数字
-
整数 int
-
浮点数 float
-
布尔数 bool
-
-
容器
-
列表 list >> my_list =[1,2,3,4,5]
-
元组 tuple >> my_tuple=(1,2,3,4,5)
-
字典 dict >> my_dict = {"key1":"valuel","key2":"valuel"}
-
集合 set / 固定集合 frozenset >> set={1,2,3,4,5}
-
字节串 bytes / 字节数组 bytearray
-
五.单引号,双引号,三引号用法
-
单引号,双引号,三引号说明
-
双引号的字符串的内部的单引号不算是结束符
-
单引号的字符串的内部的双引号不算是结束符
# I'm a teacher! print("I'm a teacher!") # 我有一只"够" print('我是"够"')
-
三引号字符串的内部可以包含单引号和双引号
# I'm a teacher! 我是"波波" print('''I'm a teacher! 我是"波波"''')
-
三引号字符串又称为所见即所得字符串, 每一次换行会转换成换行符 '\n'
# print("咏鹅\n鹅鹅鹅,\n曲项向天歌;\n白毛浮绿水,\n红掌拨清波。") # 等同于如下写法 print('''咏鹅 鹅鹅鹅, 曲项向天歌; 白毛浮绿水, 红掌拨清波。''')
-
-
字符串的转义
字符串的字面值中,可以用反斜杠 \ 后加一个或多个字符串,代表一个单个的字符
\' 代表一个单引号 \" 代表一个双引号 \n 代表一个换行符 \\ 代表一个反斜杠
print('我是单引号\',我是双引号\", 我是三单引号\'\'\', 我是三双引"""') # 我是单引号',我是双引号", 我是三单引号''', 我是三双引"""
Python 中全部的转义字符串
转义序列 | 含义 | 注释 |
---|---|---|
\newline | 反斜杠加换行全被忽略 | |
\\ | 反斜杠 (\ ) | |
\' | 单引号 (' ) | |
\" | 双引号 (" ) | |
\a | ASCII 响铃 (BEL) | |
\b | ASCII 退格 (BS) | |
\f | ASCII 进纸 (FF) | |
\n | ASCII 换行 (LF) | |
\r | ASCII 回车 (CR) | |
\t | ASCII 水平制表 (TAB) | 四个空格 |
\v | ASCII 垂直制表 (VT) | |
\ooo | 八进制数 ooo 码位的字符 | (1,3) |
\xhh | 十六进制数 hh 码位的字符 | (2,3) |
六.常用方法
1.sep用法
用sep的值来连接输出的值
print(1,2,3,sep='*') #1*2*3 >> 以“*”连接数字1,2,3输出
2.len()方法-获取长度
x = "adafa" print(len(x)) #5
3.使用type函数----获取一个变量或值的类型。
x = 123 >>> type(x) <class 'int'>
4.切片
语法:字符串[(开始索引b):(结束索引e)(:(步长s))]
-
说明
-
开始索引b是切片切下的开始位置
-
结束索引e 是切片的终止位置(但不包含终止点)
-
步长是切片取出数据后向后移动的方向和偏移量
-
没有步长,相当于步长为1(默认为1)
-
当步长为正数时,取正向切片
-
开始索引默认为0, 结束索引是最后一个元素的下一个索引
-
-
当步长为负数时,取反向切片
-
开始索引默认为-1, 结束索引是第一个元素的前一个索引
-
-
-
示列
s = 'ABCDE'
>>> s[1:] # 'BCDE'
>>> s[-2:] # 'DE'
>>> s[1:4] # 'BCD'
>>> s[:] # 'ABCDE'
>>> s[:2] # 'AB'
>>>s[::-1] # 'EDCBA'
x='huaqyj'[0:2:2]
print(x)
5.占位符
-
作用
生成具有一定格式的字符串
-
语法规则
格式化字符串 % 参数1 # 或者 格式化字符串 % (参数1, 参数2, 参数3)
-
占位符和类型码
占位符和类型码 | 说明 |
---|---|
%s | 转成字符串, 使用 str(x) 函数转换(常用) |
%d | 转成 十进制的整数(常用) |
%o | 转成 八进制的整数 |
%x,%X | 转成 十六进制的整数 |
%e,%E | 转成 指数格式的浮点数 |
%f,%F | 转成小数格式的浮点数(常用) |
%g,%G | 转成指数格式或小数格式的浮点数 |
%% | 转成一个% |
补充:%m,nf,m是指总宽度,默认右对齐,加个 - 表示左对齐,n 是指保留的小数点位数
-
示例1
>>> fmt = """ 甲方:_____%s_____ 乙方:_____%s_____ ....... 金额:_%d__ """ >>> s = fmt % ("小王", '华清', 10000) b = fmt % ("小红", '华清', 10000) >>> print(s) 甲方:_____小王_____ 乙方:_____华清_____ ....... 金额:_10000__
七.Python 的字符串常用内建函数如下:
序号 | 方法及描述 |
---|---|
1 | capitalize()将字符串的第一个字符转换为大写 |
2 | center(width, fillchar)返回一个指定的宽度 width 居中的字符串,fillchar 为填充的字符,默认为空格。 |
3 | count(str, beg= 0,end=len(string))返回 str 在 string 里面出现的次数,如果 beg 或者 end 指定则返回指定范围内 str 出现的次数 |
4 | endswith(suffix, beg=0, end=len(string))检查字符串是否以 suffix 结束,如果 beg 或者 end 指定则检查指定的范围内是否以 suffix 结束,如果是,返回 True,否则返回 False。 |
5 | expandtabs(tabsize=8)把字符串 string 中的 \t 符号转为空格,tab 符号默认的空格数是 8 。 |
6 | find(str, beg=0, end=len(string))检测 str 是否包含在字符串中,如果指定范围 beg 和 end ,则检查是否包含在指定范围内,如果包含返回开始的索引值,否则返回-1 |
7 | index(str, beg=0, end=len(string))跟find()方法一样,只不过如果str不在字符串中会报一个异常。 |
8 | isalnum()非空字符串 中没有符号 就返回True |
9 | isalpha() 判断字符串是否是英文字符 是就返回True |
10 | isdigit()如果字符串只包含数字则返回 True 否则返回 False |
11 | islower() 用于检测字符串中的所有字符是否都是小写字母,字符都是小写,则返回 True,否则返回 False |
12 | isnumeric()如果字符串中只包含数字字符,则返回 True,否则返回 False |
13 | isspace()如果字符串中只包含空白,则返回 True,否则返回 False. |
14 | istitle()如果字符串是标题化的(见 title())则返回 True,否则返回 False |
15 | isupper()用于检测字符串中的所有字符是否都是大写字母,并且都是大写,则返回 True,否则返回 False |
16 | join(seq)以指定字符串作为分隔符,将 seq 中所有的元素(的字符串表示)合并为一个新的字符串 |
17 | len(string)返回字符串长度 |
18 | ljust(width, fillchar])返回一个原字符串左对齐,并使用 fillchar 填充至长度 width 的新字符串,fillchar 默认为空格。 |
19 | lower()转换字符串中所有大写字符为小写. |
20 | lstrip()截掉字符串左边的空格,\t,\r,\n或指定字符。 |
21 | maketrans()创建字符映射的转换表,对于接受两个参数的最简单的调用方式,第一个参数是字符串,表示需要转换的字符,第二个参数也是字符串表示转换的目标。 |
22 | max(str)返回字符串 str 中最大的字母。 |
23 | min(str)返回字符串 str 中最小的字母。 |
24 | replace(old, new , max)把 将字符串中的 old 替换成 new,如果 max 指定,则替换不超过 max 次。 |
25 | rfind(str, beg=0,end=len(string))类似于 find()函数,不过是从右边开始查找. |
26 | rindex( str, beg=0, end=len(string))类似于 index(),不过是从右边开始. |
27 | rjust(width, fillchar)返回一个原字符串右对齐,并使用fillchar(默认空格)填充至长度 width 的新字符串 |
38 | rstrip()删除字符串末尾的空格\t,\r,\n或指定字符。 |
29 | split(sep="", maxsplit=string.count(str))以 sep为分隔符截取字符串,如果 maxsplit有指定值,则仅截取 maxsplit+1 个子字符串 |
30 | splitlines(keepends)按照行('\r', '\r\n', \n')分隔,返回一个包含各行作为元素的列表,如果参数 keepends 为 False,不包含换行符,如果为 True,则保留换行符。 |
31 | startswith(substr, beg=0,end=len(string))检查字符串是否是以指定子字符串 substr 开头,是则返回 True,否则返回 False。如果beg 和 end 指定值,则在指定范围内检查。 |
32 | strip(chars)在字符串上执行 lstrip()和 rstrip() |
33 | swapcase()将字符串中大写转换为小写,小写转换为大写 |
34 | title()返回"标题化"的字符串,就是说所有单词都是以大写开始,其余字母均为小写 |
35 | upper()转换字符串中的小写字母为大写 |
36 | zfill (width) 在字符串左侧填充指定数量的零,确保整个字符串达到指定长度 |
1. str.lower(): 将字符串转换为小写 text = "Hello, World!" print(text.lower()) # 输出: hello, world! 2. str.upper(): 将字符串转换为大写 text = "Hello, World!" print(text.upper()) # 输出: HELLO, WORLD! 3. str.strip(): 移除字符串两端的空白字符 text = " Hello, World! " print(text.strip()) # 输出: Hello, World! 4. str.split(): 将字符串拆分为列表 text = "Hello, World!" print(text.split()) # 输出: ['Hello,', 'World!'] text = "Hello,World!" print(text.split(',')) # 输出: ['Hello', 'World!'] 5. str.join(): 将列表中的字符串连接为一个字符串 words = ['Hello', 'World'] print(" ".join(words)) # 输出: Hello World words = ['apple', 'banana', 'cherry'] print(", ".join(words)) # 输出: apple, banana, cherry 6. str.replace(): 替换字符串中的子字符串 text = "Hello, World!" print(text.replace("World", "Python")) # 输出: Hello, Python! 7. str.find(): 查找子字符串,返回第一次出现的位置 text = "Hello, World!" print(text.find("World")) # 输出: 7 print(text.find("Python")) # 输出: -1(如果未找到则返回 -1) 8. str.startswith(): 检查字符串是否以指定子字符串开头 text = "Hello, World!" print(text.startswith("Hello")) # 输出: True print(text.startswith("World")) # 输出: False 9. str.endswith(): 检查字符串是否以指定子字符串结尾 text = "Hello, World!" print(text.endswith("World!")) # 输出: True print(text.endswith("Hello")) # 输出: False 10. str.isdigit(): 检查字符串是否只包含数字字符 text1 = "12345" text2 = "12345abc" print(text1.isdigit()) # 输出: True print(text2.isdigit()) # 输出: False 11. str.isalpha(): 检查字符串是否只包含字母字符 text1 = "Hello" text2 = "Hello123" print(text1.isalpha()) # 输出: True print(text2.isalpha()) # 输出: False 12. str.isalnum(): 检查字符串是否只包含字母和数字字符 text1 = "Hello123" text2 = "Hello 123" print(text1.isalnum()) # 输出: True print(text2.isalnum()) # 输出: False 13. str.title(): 将字符串中的每个单词的首字母转换为大写 text = "hello, world!" print(text.title()) # 输出: Hello, World! 14. str.capitalize(): 将字符串的首字母转换为大写 text = "hello, world!" print(text.capitalize()) # 输出: Hello, world! 15. str.count(): 计算子字符串在字符串中出现的次数 text = "Hello, World! Hello, Python!" print(text.count("Hello")) # 输出: 2 print(text.count("Python")) # 输出: 1 16. str.format(): 格式化字符串 name = "John" age = 30 print("My name is {} and I am {} years old.".format(name, age)) # 输出: My name is John and I am 30 years old. print(f"My name is {name} and I am {age} years old.") # 输出: My name is John and I am 30 years old. (使用 f-string)
八.整数int --十进制,八进制,十六进制
## 十进制的写法
100 0 -5
## 二进制的写法 0b 开头 后跟 0~1
0b1101
## 八进制的写法 0o开头 后跟 0~7
0o777 等于 0b111111111 等于 511
## 十六进制的写法 0x 开头 后跟 0~9, a-f, A-F
0xA1B2C3D4