Python热门知识:让你掌握未来!

目录

这里写自定义目录标题

一、注释

二、行与缩进

三、Python中特有的交换两个变量的值的方法

四、循环的巧应用(列表解析)

五、eval()函数与str()函数

六、条件表达式的紧凑形式

七、try-except语句的应用

八、get()函数

九、组合数据类型的简单总结

十、lambda函数

十一、函数sort()


这里写自定义目录标题

  • 一、注释
  • 二、行与缩进
  • 三、Python中特有的交换两个变量的值的方法
  • 四、循环的巧应用(列表解析)
  • 五、eval()函数与str()函数
  • 六、条件表达式的紧凑形式
  • 七、try-except语句的应用
  • 八、get()函数
  • 九、组合数据类型的简单总结
  • 十、lambda函数
  • 十一、函数sort()
  • 十二、推荐
  • 一、注释

    单行注释:以 # 开头,编程规范建议#后面跟一个空格

    多行注释:用一对连续的三个引号,单引号或者双引号均可("""/’’’)

    二、行与缩进

    (1)python与其他语言明显的区别是没有大括号,而是用缩进表示代码块。

    (2)需要注意每行语句不需要以分号结束。(学过c语言的应该注意一下)

    三、Python中特有的交换两个变量的值的方法

    直接将a, b两个变量放到元组中,再通过元组按照index进行赋值的方式进行重新赋值给两个变量。(不用再用一个中间值进行交换了)
    如果不了解元组可以参考:
    点击即可进入组合数据类型之序列类型(包含元组,列表,字符串)(Python学习笔记)
    代码:

    a=1
    b=2
    (a,b)=(b,a)
    print(a)
    print(b)
    

    结果:

    2
    1
    

    四、循环的巧应用(列表解析)

    当你要建立一个1到10所有数字的平方时:

    普通方法:

    list=[]
    for i in range(1,11):list.append(i**2)
    print(list)

    结果:

    [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
    

    列表解析:

    list=[i**2 for i in range(1,11)]
    print(list)

    结果:

    [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
    

    总结:
    可以看出,只需要将普通方法中的append后面括号里加上普通方法中的for i in range(1,11)加到列表里即可。

    也就是普通方法经过复制粘贴是可以形成列表解析的,但并不是所有的for循环可以写成列表解析式。

    五、eval()函数与str()函数

    eval(<字符串>)的作用是将输入的字符串转变成Python语句。
    str() 函数将整形转化为字符串形式.
    注意:
    无论用户在控制台输入什么内容,input()函数都以字符串类型返回结果。

    代码展示:

    x=eval(input("输入数字"))  
    print(x)
    print(x*2)
    print(type(x)) 
    x=str(x)     #此时x转变成了字符串形式
    print(type(x))
    

    结果:

    输入数字6
    6
    12
    <class 'int'>
    <class 'str'>
    

    如果不加eval()函数会出现如下情况:

    x=input("输入数字")
    print(x)
    print(x*2) #会出现字符串“6”+“6”=“66”
    print(type(x))
    

    结果:

    输入数字6
    6
    66
    <class 'str'>
    

    注意:
    1)使用eval()函数处理字符串需要合理使用,假如你直接输入字符串“Hello”,eval()函数会去掉两个引号,这时候将其解释为一个变量,而之前又没有定义过Hello变量,解释器会报错.

    2)若对“‘Hello"'使用eval()函数,仅仅会去掉外层的双引号,还会留下一对单引号,此时’Hello‘会被解释为字符串。

    六、条件表达式的紧凑形式

    语法:

    <表达式1> if <条件> else <表达式2>条件成立则输出表达式1,不成立则输出表达式2
    

    代码:

    guess=eval(input())
    print("你猜{}了".format("对" if guess==99 else "错"))

    结果:

    99
    你猜对了
    

    七、try-except语句的应用

    Python使用try-except语句来实现异常处理,其基本语法格式如下:

    try:<语句块1>
    except <异常类型>:<语句块2>
    

    代码演示:

    try:num=eval(input("请输入一个数:"))print(num**2)
    except NameError:print("输入错误,请重新输入一个数")

    结果:

    请输入一个数:no
    输入错误,请重新输入一个数
    

    try-except语句还有多种用法,我再另一篇博客详细解释了下:
    点击即可进入try-except语句的应用(超详细的学习笔记)

    八、get()函数

    语法:

    dict.get(key, default=None)key -- 字典中要查找的键。
    default -- 如果指定键的值不存在时,返回该默认值。
    

    代码:

    dict={"a":"1","b":"2"}
    x=dict.get("a","不存在")
    y=dict.get("c","不存在")
    print(x)
    print(y)
    

    若不了解字典类型:
    点击即可进入(Python)组合数据类型之字典类型和操作(学习笔记)
    结果:

    1
    不存在
    

    九、组合数据类型的简单总结

    1、元组是一种序列类型,一旦创建就不能被修改,使用小括号 () 或 tuple() 创建,元素间用逗号分隔

    2、列表是一种序列类型,创建后可以随意被修改,使用方括号 [] 或list() 创建,元素间用逗号 , 分隔,列表中各元素类型可以不同,无长度限制

    3、字典是键值对的集合,键值对之间有顺序且不能重复没,采用大括号{}和dict()创建。

    4、集合是多个元素的无序组合,集合元素之间无序,不存在相同元素,元素间用逗号分隔,建立集合类型用 {} 或 set(),但是建立空集合类型,必须使用set()

    5、集合可以用于数据去重,所以如果你定义了一个列表,想要去除相同元素,可以转换为集合类型后再转换为列表即可。
    如果要详细了解可以参考:
    (1)点击即可进入组合数据类型之序列类型(包含元组,列表,字符串)(Python学习笔记)

    (2)点击即可进入组合数据类型之集合类型(学习笔记)(Python)

    (3)点击即可进入(Python)组合数据类型之字典类型和操作(学习笔记)

    代码演示:

    L=[1,9,5,6,4,3,5,1,2,1,5,3]
    L=set(L)  #列表转换为集合可以去重
    L=list(L)  #去重完后可以在转换回来成列表
    print(L)

    结果:

    [1, 2, 3, 4, 5, 6, 9]
    

    十、lambda函数

    a=lambda x,y:x+y
    print(a(3,2))
    

    结果:

    5
    

    这算是lambda函数简单的用法,以这个实例先来讲一下其语法格式:

       lambda [arg1 [,arg2,.....argn]]:expression
    

    [arg…] 是参数列表

    expression 是一个参数表达式

    冒号前是参数,可以有多个,参数之间用逗号隔开,冒号右边为表达式。

    lambda函数是一个匿名函数,为什么叫它匿名函数?

    那是因为匿名函数并不需要用def关键字来声明,它主要应用于简单函数,不想单独去创建普通函数的时候使用。

    注意:
    1、参数表达式中的表达式不能超过一个

    2、lambda 函数不能包含命令

    3、lambda 函数不能访问自己参数列表之外的参数,只能完成非常简单的功能。

    4、表达式中含有的参数需要在[arg…] 中有定义。

    十一、函数sort()

    1、仅对列表进行排序,改变列表自身顺序,无返回值。

    2、语法格式:

      list.sort(key=None, reverse=False)
    

    key:设置排序方法或者可以指定列表中用于排序的元素

    reverse:True反序,False正序,若不赋值则默认为升序排列

    (1) 先对简单列表进行排序

    >>> list=[2,1,6,5,9,8,6,3,]
    >>> list.sort()
    >>> print(list)
    [1, 2, 3, 5, 6, 6, 8, 9]
    >>> list.sort(key=None,reverse= True)
    >>> print(list)
    [9, 8, 6, 6, 5, 3, 2, 1]
    

    (2)对字典组成的列表排序:

    a = [{'Mike': 99}, {'John': 98},{'zoom':96}]
    a.sort(key=lambda x: list(x.values()))
    print(a)
    

    结果:

    [{'zoom': 96}, {'John': 98}, {'Mike': 99}]
    

    对 a.sort(key=lambda x: list(x.values())) 的理解:
    这语句中X是列表项即列表中的每个字典,list(x.values())是取字典的值转化为列表。简单讲就是用列表中每个字典的值进行排序。简单说一下:

    物联沃分享整理
    物联沃-IOTWORD物联网 » Python热门知识:让你掌握未来!

    发表回复