• Python3 系列之 基础语法篇


    基础数据类型

    • 整数

    python 可以处理任意大小的整数

    • 浮点数

    python 可以处理任意大小的浮点数,但是需要注意的一点是:整数运算永远是精确的(除法也是精确的),而浮点数运算则可能会有四舍五入的误差。

    • 字符串

    在 python 中,字符串常用 '' '""" 表示,至于这三者之间的区别和字符串的编码要求可以参考:Python3 系列之 编程规范篇

    • 布尔值

    布尔值可以用 and、or 和 not 运算。
    and 运算是与运算,只有所有都为 True,and 运算结果才是 True。
    or 运算是或运算,只要其中有一个为 True,or 运算结果就是 True。
    not 运算是非运算,它是一个单目运算符,把 True 变成 False,False 变成 True。

    • 空值

    基本上每种编程语言都有自己的特殊值——空值,在 Python 中,用 None 来表示

    • 变量

    python 是弱类型语言,因此在定义变量时无需指定变量类型。

    列表和元组

    列表示例

    # 创建列表
    mylist = ["one",123,345.67,1233,"hello"]
    
    # 通过下标访问元素
    print(mylist[2])
    
    # 通过切片方式访问元素
    print(mylist[1:3])
    
    # 遍历列表元素
    for target in mylist:
        print(target)
    
    # 更新列表
    mylist[1] = "world"
    print(mylist)
    
    # 添加元素
    mylist.append("beloved")
    print(mylist)
    
    # 掺入元素
    
    mylist.insert(0,"hippie")
    print(mylist)
    
    # 删除元素
    mylist.remove(mylist[1])
    print(mylist)
    
    print(len(mylist))
    print(mylist.pop())
    

    官网链接:Lists

    元组示例

    tuple 和 list 非常类似,但是 tuple 一旦初始化就不能修改。

    # 创建空元组
    mytuple = ()
    
    # 创建元组
    mytuple = ('A','hello','b','world')
    
    # 下标访问元组
    print(mytuple[0])
    
    # 删除元组
    del mytuple
    

    官网链接:Tuple

    字典和 Set

    字典示例

    # 创建空元组
    mydic = {'A':123,'b':456}
    
    # 修改字典
    mydic['b'] = 769
    
    # 删除字典
    del mydic['b']
    
    # 清空字典
    mydic.clear()
    
    

    Set 示例

    python 的 set 和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素。set 和 dict 类似,但是 set 不存储 value 值的。

    # 创建 set 类型的数据集
    myset = set([1,2,3,3,4,5])
    
    # 添加元素
    myset.add(6)
    
    # 删除元素
    myset.remove(4)
    
    print(myset)
    
    set1=set('hello')
    set2=set(['p','y','y','h','o','n'])
    print(set1)
    print(set2)
    
    # 交集 (求两个 set 集合中相同的元素)
    set3=set1 & set2
    print('
    交集 set3:')
    print(set3)
    # 并集 (合并两个 set 集合的元素并去除重复的值)
    set4=set1 | set2
    print('
    并集 set4:')
    print(set4)
    # 差集
    set5=set1 - set2
    set6=set2 - set1
    print('
    差集 set5:')
    print(set5)
    print('
    差集 set6:')
    print( set6)
    
    # 去除海量列表里重复元素,用 hash 来解决也行,只不过感觉在性能上不是很高,用 set 解决还是很不错的
    list1 = [111,222,333,444,111,222,333,444,555,666]  
    set7=set(list1)
    print('
    去除列表里重复元素 set7:')
    print(set7)
    

    条件语句(if else)

    循环语句(while、for)

    函数

    def functionname( parameters ):
       "函数_文档字符串"
       function_suite
       return [expression]
    
    • 传值问题
    • 返回值
    • 参数
    • 匿名函数:lambda
    lambda [arg1 [,arg2,.....argn]]:expression
    

    迭代器和生成器

    # 1、字符创创建迭代器对象
    str1 = 'liangdianshui'
    iter1 = iter ( str1 )
    
    # 2、list对象创建迭代器
    list1 = [1,2,3,4]
    iter2 = iter ( list1 )
    
    # 3、tuple(元祖) 对象创建迭代器
    tuple1 = ( 1,2,3,4 )
    iter3 = iter ( tuple1 )
    
    # for 循环遍历迭代器对象
    for x in iter1 :
        print ( x , end = ' ' )
    
    print('
    ------------------------')
    
    # next() 函数遍历迭代器
    while True :
        try :
            print ( next ( iter3 ) )
        except StopIteration :
            break
    
    # lsit 生成式(列表生成式)
    list1=list ( range (1,31) )
    print(list1)
    
    lsit1= [x * x for x in range(1, 11) if x % 2 == 0]
    print(lsit1)
    
    lsit1=[x * x for x in range(1, 11)]
    print(lsit1)
    
    lsit1= [(x+1,y+1) for x in range(3) for y in range(5)] 
    print(lsit1)
    
    # 综合运用
    class Countdown:
        def __init__(self, n):
            self.start = n
    
        def __iter__(self):
            n = 0
            while n < self.start:
                yield n
                n += 1
    
        def __reversed__(self):
            n = self.start - 1
            while n > -1:
                yield n
                n -= 1
    
    
    for rr in Countdown(20):
        print(rr)
    
    for rr in reversed(Countdown(20)):
        print(rr)
    
  • 相关阅读:
    自我理解:const char*, char const* and char *const
    获取任意控件的ID或窗口句柄
    Webmax 2.0开启无限量下载
    dotLucene搜索加入中文分词
    SQL SERVER获得指定表的主键
    LogExplore应用(ms sql server事物分析、数据恢复工具)[转载]
    电脑病之一
    查找数据库中记录数大于N的表
    视图
    获取生日提醒数据
  • 原文地址:https://www.cnblogs.com/hippieZhou/p/10077163.html
Copyright © 2020-2023  润新知