注释:

会被解释器所忽略,辅助调试

单行注释以#开头,如

#此为一个注释

多行注释:多个# 或者三个单or双引号,如

##我是

##注释

##我也是


‘’’/“””

我是注释

‘’’/“””

结构

注意 :👈冒号

多分枝结构:if elif else

注意缩进 👆

循环:while&for

while语句

while<条件>:

​ <语句块>

for语句(遍历):

for i(元素) in A(组合 如字符串 列表 元组 )

break语句:跳出当前循环

行与缩进

缩进:Python中用来表示代码块,就不必用大括号

意味着,同一个代码块中的语句中必须包含相同的缩进空格数

如:

if Ture:

print(“True”)

else:

print(“False)

print(“You fool”)

👆此处代码块的缩进不一致,便会出现运行错误:

IndentationError: unindent does not match any outer indentation level

注意:tab换行长度上和四个空格一样 但有时混用tap和空格可能导致报错

但是根本很难看得出来

除非你用 notepad+ 去查看

多行语句

用反斜杠\来实现多行语句,例如:

*total = one +\*

*two +\*

three

在[], {} , ()中的多行语句则不需要使用反斜杠

数据类型

int:整数 可正负 无取值范围限制

bool:布尔,如:True

float:浮点数,如:1.23、3E-2

complex:复数,如:1+2j、1.1+2.2j

字符串

  • python中单引号’与双引号”使用完全相同,使用三引号(单双都行)可以指定一个多行字符串
  • 反斜杠\用来转义,用字母r可以使反斜杠不转义。
  • *按字面意义级联字符串,如 “this “ “is “ “string” 会被自动转换为 this is string。*
  • 字符串可以用 + 运算符连接在一起,用 ***** 运算符重复。
  • Python 中的字符串有两种索引方式,从左往右以 0 开始,从右往左以 -1 开始
  • Python 中的字符串不能改变。
  • Python 没有单独的字符类型,一个字符就是长度为 1 的字符串。
  • 字符串的截取(切片)的语法格式如下:变量[头下标:尾下标:步长]

eg:

  1. str=’123456789’

  2. print(str) # 输出字符串 123456789

  3. print(str[0:-1]) # 输出第一个到倒数第二个的所有字符 12345678

  4. print(str[0]) # 输出字符串第个字符(从0开始数) 1

  5. print(str[2:5]) # 输出从第三个开始到第五个的字符 345

  6. print(str[2:]) # 输出从第三个开始后的所有字符 3456789

  7. print(str[1:5:2]) # 输出从第二个开始到第五个且每隔一个的字符(步长为2)24

  8. print(str * 2) # 输出字符串两次 123456789123456789

  9. print(str + ‘你好’) # 连接字符串 123456789你好

  10. print(‘hello\nrunoob’) # 使用反斜杠()+n转义特殊字符 hello换行rb

  11. print(r’hello\nrunoob’) # 在字符串前面添加一个 r,表示原始字符串,不会发生转义 hello\nrunoob

    1. python转义字符

    在需要在字符中使用特殊字符时,python 用反斜杠 ** 转义字符。如下表:

    转义字符示例
    转义字符描述实例
    (在行尾时)续行符>>> print("line1 \ ... line2 \ ... line3") line1 line2 line3 >>>
    \反斜杠符号>>> print("\\") \
    '单引号>>> print('\'') '
    "双引号>>> print("\"") "
    \a响铃>>> print("\a")执行后电脑有响声。
    \b退格(Backspace)>>> print("Hello \b World!") Hello World!
    \000>>> print("\000") >>>
    \n换行>>> print("\n") >>>
    \v纵向制表符>>> print("Hello \v World!") Hello World! >>>
    \t横向制表符>>> print("Hello \t World!") Hello World! >>>
    \r回车,将 \r 后面的内容移到字符串开头,并逐一替换开头部分的字符,直至将 \r 后面的内容完全替换完成。>>> print("Hello\rWorld!") World! >>> print('google runoob taobao\r123456') 123456 runoob taobao
    \f换页>>> print("Hello \f World!") Hello World! >>>
    \yyy八进制数,y 代表 0~7 的字符,例如:\012 代表换行。>>> print("\110\145\154\154\157\40\127\157\162\154\144\41") Hello World!
    \xyy十六进制数,以 \x 开头,y 代表的字符,例如:\x0a 代表换行>>> print("\x48\x65\x6c\x6c\x6f\x20\x57\x6f\x72\x6c\x64\x21") Hello World!
    \other其它的字符以普通格式输出

    ord chr函数

    ord(“”) 获取unicode编码

    chr(“”) 根据unicode 编码输出字符

    有点像c里Ascii码与字符互相确定 不过python里能够使用汉字

    字符串处理方法

    方法:有别于函数又有类似之处

    str.lower() 小写

    str.upper() 大写

    str.split() 通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则分隔 num+1 个子字符串 返回列表

    str.replace(old,new) 指定内容替换

    str.center(width[])方法返回一个指定的宽度 width 居中的字符串,fillchar 为填充的字符,默认为空格。

    etc.

    ****

    列表list

    lis1 = [ ]

    位置值(索引) 对应元素

    👆从0开始 0对应第一个 1对应第二个

    列表的方法;

    Python包含以下方法:

    序号 方法
    1 list.append(obj) 在列表末尾添加新的对象
    2 list.count(obj) 统计某个元素在列表中出现的次数
    3 list.extend(seq) 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
    4 list.index(obj) 从列表中找出某个值第一个匹配项的索引位置
    5 list.insert(index, obj) 将对象插入列表
    6 [list.pop(index=-1]) 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
    7 list.remove(obj) 移除列表中某个值的第一个匹配项
    8 list.reverse() 反向列表中元素
    9 list.sort( key=None, reverse=False) 对原列表进行排序
    10 list.clear() 清空列表
    11 list.copy() 复制列表

运算符

优先级由高到低:not and or

1
2
3
4
5
6
7
8
x = True
y = False
z = False

if x or y and z:
print("yes")
else:
print("no")

结果是 yes!

is 与 == 区别:

is 用于判断两个变量引用对象是否为同一个, == 用于判断引用变量的值是否相等。

函数:

使用def 函数定义新函数

def 函数名 ( 函数参数):

​ xxx 函数体

return x 返回值

输入函数input()

使用格式:<变量> = input(<提示信息字符串>)

用户输入信息以字符串类型保存在<变量>中

print函数

print(a,b,sep=”空格”)控制间隔

print(a,b,end=”默认\n”)控制结束时

格式化输出:

print(“hello %s you are %d” %(name,age))

print(“hello {数字表示顺序 默认0}, you are {默认1}”.format(name,age))

string.format

{<参数序号>:(填充)<格式控制标记>}

eval函数

函数用来执行一个字符串表达式,并返回表达式的值

eval() 函数也可以直接用来提取用户输入的多个值。

例如:

1
a,b=eval(input())

输入:10,5,得到 a=10,b=5

range函数:创建整数列表

range(start,end,step)

默认0 默认1 默认1

数学函数

数学函数与随机数函数示例
函数返回值 ( 描述 )
abs(x)返回数字的绝对值,如abs(-10) 返回 10
ceil(x)返回数字的上入整数,如math.ceil(4.1) 返回 5
cmp(x, y)如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1。 Python 3 已废弃,使用 (x>y)-(x<y) 替换
exp(x)返回e的x次幂(ex),如math.exp(1) 返回2.718281828459045
fabs(x)返回数字的绝对值,如math.fabs(-10) 返回10.0
floor(x)返回数字的下舍整数,如math.floor(4.9)返回 4
log(x)如math.log(math.e)返回1.0,math.log(100,10)返回2.0
log10(x)返回以10为基数的x的对数,如math.log10(100)返回 2.0
max(x1, x2,…)返回给定参数的最大值,参数可以为序列。
min(x1, x2,…)返回给定参数的最小值,参数可以为序列。
modf(x)返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。
pow(x, y)x**y 运算后的值。
[round(x ,n])返回浮点数 x 的四舍五入值,如给出 n 值,则代表舍入到小数点后的位数。其实准确的说是保留值将保留到离上一位更近的一端。
sqrt(x)返回数字x的平方根。

随机数函数

随机数可以用于数学,游戏,安全等领域中,还经常被嵌入到算法中,用以提高算法效率,并提高程序的安全性。

Python包含以下常用随机数函数:

函数描述
choice(seq)从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数。
[randrange (start,] stop [,step])从指定范围内,按指定基数递增的集合中获取一个随机数,基数默认值为 1
random()随机生成下一个实数,它在[0,1)范围内。
[seed(x])改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择seed。
shuffle(lst)将序列的所有元素随机排序
uniform(x, y)随机生成下一个实数,它在[x,y]范围内。