使用缩进来指示代码块
树图思维导图提供 使用缩进来指示代码块 在线思维导图免费制作,点击“编辑”按钮,可对 使用缩进来指示代码块 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:072b0fdf36bb7e72f5ef2343d8b104f6
使用缩进来指示代码块思维导图模板大纲
空格数取决于程序员,但至少需要一个
if 5 > 2:
print("Five is greater than two!")
if 5 > 2:
print("Five is greater than two!")
必须在同一代码块中使用相同数量的空格,否则 Python 会出错
if 5 > 2:
print("Five is greater than two!") print("Five is greater than two!")
单行注释 以 # 开头,其余部分作为注释呈现
#This is a comment. print("Hello, World!")
注释不必是解释代码的文本,它也可以用来阻止 Python 执行代码
#print("Hello, World!") print("Cheers, Mate!")
Hello, Kitty!
可以为每行插入一个 #
#This is a comment #written in
#more than just one line print("Hello, World!")
多行注释
使用多行字符串"""
"""
This is a comment written in
more than just one line """
print("Hello, World!")
变量名称
Python 变量命名规则:
变量名必须以字母或下划线字符开头变量名称不能以数字开头
变量名只能包含字母数字字符和下划线(A-z、0-9 和 _)
变量名称区分大小写(age、Age 和 AGE 是三个不同的变量)请记住,变量名称区分大小写
变量是存放数据值的容器用字符串向变量赋值
通过使用变量名称后跟等号和字符串,可以把字符串赋值给变量:
x = 10
y = "Bill"
字符串变量可以使用单引号或双引号进行声明
x = "Bill"
# is the same as x = 'Bill'
创建变量
多行字符串
a = """Python is a widely used general-purpose, gaga, lslfjajljfd"""
a = '''Python is a widely used general-purpose, gaga, lslfjajljfd'''
三个双引号
三个单引号
变量不需要使用任何特定类型声明,甚至可以在设置后更改其类型。 x = 5 # x is of type int
x = "Steve" # x is now of type str
print 语句通常用于输出变量。
输出变量
如需结合文本和变量,使用 + 字符
x = "awesome" print("Python is " + x)
x = "Python is " y = "awesome" z = x + y print(z)
x = 5
y = 10
print(x + y)
向多个变量赋值
x, y, z = "Orange", "Banana", "Cherry"或者
x = y = z = "Orange" print\(x\)
print(y) print(z)
x = "awesome"在函数外部创建的变量(如上述所有实例所示)称为全局变量。 def myfunc():
全局变量
全局变量可以被函数内部和外部的每个人使用。
print("Python is " + x)
myfunc()
x = "awesome" def myfunc():
如果在函数内部创建具有相同名称的变量,则该变量将是局部变量,并且只能在函数内部使用。
具有相同名称的全局变量将保留原样,并拥有原始值。
x = "fantastic" print("Python is " + x)
myfunc() print("Python is " + x)
def myfunc(): global x
x = "fantastic"
外部 myfunc() print("Python is " + x)
global 关键字
通常,在函数内部创建变量时,该变量是局部变量,只能在该函数内部使用。要在函数内部创建全局变量,您可以使用 global 关键字。
内部
x = "awesome"
def myfunc(): global x
x = "fantastic"
myfunc() print("Python is " + x)
正索引
第一个字符的位置为 0
a= "Hello, World!" print(a[1])
字符串是数组
像许多其他流行的编程语言一样,Python 中的字符串是表示 unicode 字符的字
节数组。
但是,Python 没有字符数据类型,单个字符就是长度为 1 的字符串。方括号可用于访问字符串的元素。
切片
负索引
获取从位置 2 到位置 5(不包括)的字符:左包右不包
b = "Hello, World!" print(b[2:5])
llo
获取从位置 5 到位置 3 的字符,从字符串末尾开始计数:标点符号也是一个字符串。
b = "Hello, World!" print(b[-5:-2])
orl
字符串长度
a = "Hello, World!" print(len(a))
13
字符是12,但是等号后面有个空格,所以变成了13
capitalize()
返回一个字符串,其中第一个字符为大写。当第一个字符是数字是无变化
txt = "hello, and welcome to my world." x = txt.capitalize()
print (x)
Hello, and welcome to my world."
casefold() 其中所有字符均为小写
txt = "Hello, And Welcome To My World!" x = txt.casefold()
print(x)
hello, and welcome to my world!
txt = "Hello my FRIENDS" x = txt.lower()
lower() 其中所有字符均为小写。 print(x)
符号和数字将被忽略。
hello my friends
casefold函数可识别更多的对象将其输出为小写,而lower函数只能完成ASCII码中A-Z之间的大写到小写的转换,当遇到其他外语语种时,大写向小写转换lower函数就无能为力。
中心主题
center()
使用指定的字符(默认为空格)作为填充字符使字符串居中对齐 string.center(length, character)
length: 必需。所返回字符串的长度。
character: 可选。填补两侧缺失空间的字符。默认是 " "(空格)
打印单词 "banana",占用 20 个字符,并使 "banana" 居中: txt = "banana"
x = txt.center(20)
print(x)
banana
使用字母 "O" 作为填充字符: txt = "banana"
x = txt.center(20, "O")
print(x)
OOOOOOObananaOOOOOOO
count()
返回指定值在字符串中出现的次数
string.count(value, start, end) value必需。字符串。要检索的字符串。 start可选。整数。开始检索的位置。默认是 0。 end可选。整数。结束检索的位置。默认是字符串的结尾。
返回值 "apple" 在字符串中出现的次数:
txt = "I love apples, apple are my favorite fruit" x = txt.count("apple")
print(x)
2
从位置 10 到 24 进行检索:
txt = "I love apples, apple are my favorite fruit" x = txt.count("apple", 10, 24)
print(x)
1
encode()
使用指定的编码对字符串进行编码。如果未指定编码,则将使用 UTF-8。
string.encode(encoding=encoding, errors=errors) encoding可选。字符串。规定要使用的编码。默认是 UTF-8。 errors可选。字符串。规定错误方法。合法值是:
'backslashreplace' - 使用反斜杠代替无法编码的字符 'ignore' - 忽略无法编码的字符
'namereplace' - 用解释字符的文本替换字符 'strict' - 默认值,失败时引发错误
'replace' - 用问号替换字符 'xmlcharrefreplace' - 用 xml 字符替换字符
对字符串进行 UTF-8 编码: txt = "My name is Ståle"
x = txt.encode()
print(x)
b'My name is St\xc3\xa5le'
使用 ascii 编码和无法编码的字符,展示带有不同错误的结果: txt = "My name is Ståle"
print(txt.encode(encoding="ascii",errors="backslashreplace")) print(txt.encode(encoding="ascii",errors="ignore")) print(txt.encode(encoding="ascii",errors="namereplace")) print(txt.encode(encoding="ascii",errors="replace")) print(txt.encode(encoding="ascii",errors="xmlcharrefreplace")) print(txt.encode(encoding="ascii",errors="strict"))
b'My name is St\\xe5le' b'My name is Stle'
b'My name is St\\N{LATIN SMALL LETTER A WITH RING ABOVE}le'
b'My name is St?le' b'My name is Ståle'
字符串方法 可用于字符串的内置方法
检查字符串是否以标点符号 (.) 结尾: txt = "Hello, welcome to my world." x = txt.endswith(".")
print(x)
True
endswith()
如果字符串以指定值结尾,则 endswith() 方法返回 True,否则返回 False。
string.endswith(value, start, end) value必需。检查字符串是否以之结尾的值。 start可选。整数。规定从哪个位置开始检索。 end可选。整数。规定从哪个位置结束检索。
检查字符串是否以短语 "my world." 结尾: txt = "Hello, welcome to my world."
x = txt\.endswith\("my world\."\) print\(x\)
True
检查位置 5 至 11 是否以短语 "my world." 结尾: txt = "Hello, welcome to my world."
x = txt.endswith("my world.", 5, 11) print(x)
False
str = "runoob\t12345\tabc" print('原始字符串: {}'.format(str))
# 默认 8 个空格
# runnob 有 6 个字符,后面的 \t 填充 2 个空格 # 12345 有 5 个字符,后面的 \t 填充 3 个空格 print('替换 \\t 符号: {}'.format(str.expandtabs()))
# 2 个空格
# runnob 有 6 个字符,刚好是 2 的 3 倍,后面的 \t 填充 2 个空格
# 12345 有 5 个字符,不是 2 的倍数,后面的 \t 填充 1 个空格
原始字符串: runoob 12345 abc替换 \t 符号: runoob 12345 abc
——默认原始的八个字符串,在runoob后面放了\t ,所以从runoob的r开始数, runoob共六个字符串所以,要在runoob后面多加两个空格,将它补成完成为8个
把字符串中的 tab 符号 \t 转为空格,tab 符号 \t 默认的空格数是 8,在第 0、
8、16...等处给出制表符位置,如果当前位置到开始位置或上一个制表符位置的字
print('使用 2 个空格替换 \\t 符号: {}'.format(str.expandtabs(2))) 字符串
expandtabs()
符数不足 8 的倍数则以空格代替。
string.exandtabs(tabsize) tabsize可选。规定制表符大小的数字。默认的 tabsize 是 8。
在 ‘\t’ 处补指定长度tabsize的空格,可以自定指定,也可以使用默认的补8个空格,即看前面的字符串然后将其补到tabsize的整数倍,假如’\t’在串首则直接补tabsize数量的空格。
在哪里\t 就从\t 最前面的第一个字符串开始数,使用三个空格,就是每三个字符串为一个截点,不够三个了就加到3为止
# 3 个空格
print('使用 3 个空格: {}'.format(str.expandtabs(3)))
# 4 个空格
print('使用 4 个空格: {}'.format(str.expandtabs(4)))
# 5 个空格
print('使用 5 个空格: {}'.format(str.expandtabs(5)))
# 6 个空格
print('使用 6 个空格: {}'.format(str.expandtabs(6))).
使用 2 个空格替换 \t 符号: runoob 12345 abc使用 3 个空格: runoob 12345 abc
使用 4 个空格: runoob 12345 abc
使用 5 个空格: runoob 12345 abc
使用 6 个空格: runoob 12345 abc
str = "this is\tstring example. wow!!!"
print(str.expandtabs( ))#默认值为8 print(str.expandtabs(tabsize=8)) print(str.expandtabs( ))
print(str.expandtabs(2)) #tabsize值为0到7,与tabsize值为8相同 print(str.expandtabs(tabsize=2)) print(str.expandtabs(tabsize=9)) print(str.expandtabs(tabsize=10))
this is string example. wow!!!
——默认时8个字符串,\t 在this is后面加的,所以从this中的t开始数,this is 共 7个字符串,还差一个,所以在is 后面加一个空格
this is string example\. wow\!\!\!
this is string example. wow!!!
this is string example. wow!!!
this is string example. wow!!!
this is string example. wow!!!
this is string example. wow!!!
find()
查找指定值的首次出现。
如果找不到该值,则 find() 方法返回 -1。
find() 方法与 index() 方法几乎相同,唯一的区别是,如果找不到该值,index()方法将引发异常。(请看下面的例子)
string.find(value, start, end) value必需。要检索的值。 start可选。开始检索的位置。默认是 0。 end可选。结束检索的位置。默认是字符串的结尾。
字母 "e" 在文本总首次出现的位置: txt = "Hello, welcome to my world." x = txt.find("e")
print(x)
1
如果只搜索位置 5 到 10 时,字母 "e" 在文本总首次出现的位置: txt = "Hello, welcome to my world."
x = txt.find("e", 5, 10)
print(x)
8
如果找不到该值,则 find() 方法返回 -1,但是 index() 方法将引发异常: txt = "Hello, welcome to my world."
print(txt.find("q"))
print(txt.index("q"))
子主题2
格式化字符串的方法
字符串的拼接
format()
格式化指定的值,并将其插入字符串的占位符内,占位符使用大括号 {} 定义。 format() 方法返回格式化的字符串。基本语法是通过 { } 和 : 来代替以前的%。
string.format(value1, value2...)
必需。一个或多个应该格式化并插入字符串的值,可以接受不限个参数,位置可以不按顺序。
这些值可以是用 逗号分隔的值列表/元组、键=值列表/字典,或两者的组合。这些值可以是任何数据类型。
占位符:可以使用空的占位符 { },编号索引{0},命名索引 {price}来标识占位符。
文本类型 str x = "Hello World"
int x = 29
数值类型
float x = 29.5
complex x=1j
list x = ["apple", "banana", "cherry"]
序列类型
tuple x = ("apple", "banana", "cherry") range x = range(6)
映射类型 dict x = {"name" : "Bill", "age" : 63}
集合类型
set x = {"apple", "banana", "cherry"}
frozenset x = frozenset({"apple", "banana", "cherry"})
布尔类型 bool x = True
bytes x = b"Hello"
二进制类型
bytearray x = bytearray(5)
memoryview x = memoryview(bytes(5))
int Int 或整数是完整的数字,正数或负数,没有小数,长度不限。
x = 10
y = 37216654545182186317
z = -465167846
float
浮动或“浮点数”是包含小数的正数或负数。
x = 3.50
y = 2.0
z = -63.78
x = 27e4
浮点数也可以是带有“e”的科学数字,表示 10 的幂。
y = 15E2
z = -49.8e100
complex 复数用 "j" 作为虚部编写:
x = 2+3j y = 7j
z = -7j
树图思维导图提供 环境设计各业务版块流程图 在线思维导图免费制作,点击“编辑”按钮,可对 环境设计各业务版块流程图 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:bb759aacdf9404fdef4191a557718654
树图思维导图提供 HarmonyOs 在线思维导图免费制作,点击“编辑”按钮,可对 HarmonyOs 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:33b352332cd61ae9bda089308243d88b