精华内容
下载资源
问答
  • Python基础语法

    2020-01-22 15:20:32
    Python基础语法

    0 前言

    简单总结下Python的基础语法,参考书为人民邮电出版社的《Python编程 从入门到实践》

    1 思维导图

    在看书的时候顺便整理了一下知识点,做成了思维导图,如下图。
    在这里插入图片描述
    这是我自己做的,并没有加水印,如果您需要拿走使用,请注明出处。
    仅供学习参考,请勿用于商业用途。

    2 一些说明

    上图中用红色标出的是函数或者方法,用绿色标出的是Python的关键字。

    展开全文
  • Python基本语法

    万次阅读 多人点赞 2020-10-10 08:52:19
    Python基本语句和函数1.1 赋值语句1.2 循环与判断1.3 BIFs(内建函数)2. Python数据类型2.1 数值类型 1. Python基本语句和函数 1.1 赋值语句 # 简单赋值 a = 100 # 多变量赋值 a, b, c = 99, 100, 101 print(a, b, ...

    1. Python基本语句和函数

    1.1 赋值语句

    # 简单赋值
    a = 100
    
    # 多变量赋值
    a, b, c = 99, 100, 101
    print(a, b, c)
    
    # 变量交换(其他编程语言没有的特性)
    a, b = b, a
    print(a, b)
    

    1.2 循环与判断

    • for 迭代循环(此处和其他编程语言不一致)
    • while 条件循环
    • 三元表达式(注意和C/Java的区别)
    形式为:true_result if condition else false_result
    例如:'true_result' if True else 'false_part'
    

    1.3 BIFs(内建函数)

      Python之所以容易上手使用,其中很关键的一点为有非常多而且实用的内建函数。

      那如何查看所有的内建函数呢?

    # 查看所有的内置函数
    dir(__builtins__)
    

      由于内建函数数量非常之多,为了方便学习,先列出一些比较常用的内建函数。

    # 输入输出:print(), open(), close()等
    # 数学运算:sum(), pow(), round(), min(), max()等 
    # 类型转换:int(), bin(), hex(), oct(), str(), float(), list(), bytes()等
    # 序列操作:len(), range(), zip(), map(), reduce(), filter(), reversed() , sorted(), enumerate()等
    # 类型与地址:type(), isinstance(), issubclass(), id()等
    

      其中round和我们最熟知的四舍五入并不等价,具体可自行研究。

    2. Python数据类型

    2.1 数值类型

    • 整型(十进制、二进制、八进制、十六进制)
    • 浮点型
    • 布尔类型
    • 复数类型
    # 整数类型
    a = 100
    
    # 进制表示与转化
    a = 0b0110  # 二进制,bin()
    b = 0o0110  # 八进制,oct()
    c = 0x0110  # 十六进制,hex()
    
    # 浮点型
    f = 5.117
    # 科学计数法
    c = 5e3
    d = 7e-4
    
    # 浮点型也包括无穷
    float("inf")   # 正无穷
    float("-inf")  # 负无穷
    
    # 复数
    a = 5 + 22j
    print(type(1))
    print(a.real, a.imag)
    

    来个练习吧,下列表达式打印结果是什么?(高数不差的都能答上来哈)

    print(float('inf') + 1 > float('inf')) 
    
    # 数值类型转换
    a = -5.555
    print(int(a))
    print(float(a))
    print(complex(a))
    print(abs(a))
    

    2.2 字符串类型

      字符串的三种表示方法如下所示:

    # 不同个数的引号在表示字符串时没有区别。但字符串开头结尾必须使用同一种引号。否则报错
    url = 'http://www.python.org'  # 单引号
    url = "http://www.python.org"  # 双引号
    url_new = '''http://www.python.org'''  # 三引号
    print(url)
    

      思考问题:url_new指代的字符串是什么? 为什么Python要支持单引号和双引号来表示字符串,甚至还有三个单引号表示字符串?

    # 字符串属性,如字符串的长度
    print('len:', len(url))
    
    # 循环访问
    for item in url:
        print(item)
        
    # 索引访问,不仅能通过正数索引,还能通过负数(倒数)索引,如
    print(url[-1])  # 表示url最后一个字母
    
    # 访问之切片
    # [::]三个参数分别是开始索引位置,结束索引位置,步长(步长也可以是负值)。
    print(url[3: 6])
    print(url[:: -1])  # reverse string,相比于其他语言,该表达式真的是wonderful。
    

    需要注意的是,字符串存储在常量区,所以就会导致很多操作的本质是新建。

    # 格式化访问
    url = 'http://www.{}.org'
    company_name = 'python'
    url.format(company_name)
    print('格式化访问')
    print(url.format(company_name))
    
    # 拼接(+和*)
    url = 'http://www.{}.org '
    company_name = 'python'
    print(url.format(company_name) + '欢迎学习Python语言')
    print(url.format(company_name) * 3)
    
    # 查找与替换,查找有两个函数,一个是find,一个是index,find和
    url = url.format(company_name) + '欢迎学习Python语言'
    print(url.find('http'))
    print(url.find('语言'))
    print(url.replace('语言', 'language'))  # 注意,repalce并不改变字符串原来的内容。为什么呢?
    print(url)
    
    # 统计
    print(url.count('w'))
    print(url.count('语言'))
    
    # 获取索引
    print(url.index('台 认'))
    print(url.index('语言'))
    
    # 大小写
    print(url.title())  # 首字母大写
    print(url.upper())  # 全部字母大写
    print(url.lower())  # 全部字母小写
    
    # 去空白符\n \t \s
    print(url.lstrip())
    print(url.rstrip())
    print(url.strip())
    
    # 其他操作
    s = 'abc'
    print(s.isalpha())
    print(s.isdigit())
    print(s.isidentifier())
    

      其他常用操作:

    • 把字符串列表中若干个字符串连接成一个字符串。
    list_value = ['apple', 'orange', 'banana']
    s = ",".join(list_value)
    print(s)
    
    • 判断字符串是否以某子串结尾:endswith,需要注意的是该函数可以跟的参数可为tuple
    'my_doc.docx'.endswith('docx')
    'my_doc.docx'.endswith(('docx', 'doc'))
    
    • 如果想把整个字符串转换成list of char,则直接使用list(string)
    s = 'apple'
    list(s)
    

    2.3 有序序列

    问题:如何理解有序序列?
    答:序列最重要的就是有序,也就是能够支持索引和切片的数据结构,包含了字符串、列表、元组等数据结构。

    # 初始化
    s1 = 'python.org'
    d1 = ['python', '编程学习']  # 只是为了表达含义,实际命名不要写成d+数字
    d2 = ['.org', '平台']
    d3 = [5, 12, 6, 3, 8, 9]
    d4 = ['tensorfdow', 'sklearn', '']
    d5 = ['', '', '', '']
    t1 =('python.org', ['时下流行的编程语言', 'AI'])
    
    # 标准操作 
    # 成员操作
    'python' in t1
    'org' not in s1
    
    # 连接与重复(共类型之间)
    s1 * 10
    s1 + s1
    d1 * 5
    
    # 索引访问
    s1[0]
    d1[0]
    t1[1]
    
    # 切片访问
    s1[0: -1: 3]
    t1[0: -1]
    
    # 其它操作
    den(t1)
    den(s1)
    a = '12345'
    print("reversed:")
    b = "13579"
    print(b)
     
    # 部分内建函数的使用
    dict(reversed(t1))
    sorted(s1)
    sorted(d1)
    sorted(d3)
    max(d3);min(d3);sum(d3)
    max(d1)
    

    问题:a = [1, 5, 4, 2, 3],则a.sort()和sorted(a)有什么区别?

    # 枚举
    for invex, item in enumerate(v1):  # 同时使用索引和数据,非常常用的操作
        print(invex, item)
    
    # 序列拼接
    vist(zip(v1, t1))
    vist(zip(v1, v2))
    
    # any判断对象是否为空对象,如果都为空、0、False,则返回False,如果不都为空、0、False,则返回true
    any(v4)  # v4中有空元素,但也有不为空的元素
    any(v5)  # v5中的元素全部为空,0或者False,any返回的就是False
    
    # vv判断对象中的所有元素不为0、''、False或者x为空对象,则返回True,否则返回False
    avv(v4)  # v4中有一个空元素,则返回False
    avv(v3)  # v5中的元素全部为空,0或者False,any返回的就是False
    
    # 类型转换
    type(vist(t1))
    type(str(v1))
    type(tupve(s1))
    
    # 判断一个变量属于某种类型,好的写法如下所示:
    x = 123
    if isinstance(x, int):
        print('right')
    

    2.3.1 列表

    • append和extend的区别是什么?
    • del和pop的区别是什么?
    # 列表操作,函数一定要注意的是对传入数据直接进行修改,还是把修改后的数据进行返回。
    list1 = []
    list1.append(1)
    print(list1)
    
    list1.append(list2)  # 添加到未尾,如果元素是列表,也是按照列表添加进来
    list1.extend(['Torch'])  # 扩展,如果是扩展元素是列表,是只添加列表内的元素
    list1.insert(0,'sklearn')  # 插入元素,按索引
    list1.index('sklearn')  # 获得指定元素的索引位置,如果存在相同元素,返回的是从右到左第一个的索引位置
    list1.count('AI')  # 统计元素出现的次数
    
    list1.pop()  # 返回并弹出
    d = list1.pop(3)  # 返回并弹出指定索引位置的元素
    delist list1[3]
    list1.remove('')
    
    # 内建函数
    reversed(list1)
    sorted(list1)
    
    list2 < list3  # 列表比较,逐元素进行对比
    

    2.3.2 元组

      怎么理解元组呢?元可以谐音读成原。也就是元素就是原来的,不能进行改变。但要注意的是列表并不是链表,列表其实是动态数组,insert操作的时间复杂度是O(n)。

    # 可以认为是一个只读列表
    
    # tuple成员操作
    t1 = (5, 6, 7)
    
    a = 1
    a + 1
    t1 + (4,)#这里为什么会成功
    print(t1)
    
    # 通常我们在命令行输入4,5,6返回的是一个tuple
    # 而只输入4时,返回的是一个数值型
    
    
    # 解包unpack
    a, b, c = t1
    
    
    # tuple不可修改的是什么?
    t1 = (1, 2, 3, [4, 5, 6])
    # t1[0] = 0  # 报错,tuple' object does not support item assignment
    
    # 但是如果改一下呢?
    t1[3].append(4)
    

    2.4 无序序列

    2.4.1 集合

    # 集合的最大特性就是元素各不相同
    l1 = ['python', 'pyhon.org', 'tensorflow', 'AI']
    
    # 初始化
    a = set(l1)
    
    # s1[0] 报错,'set' object does not support indexing
    
    #成员操作
    'AI' in a
    
    #集合内部操作
    a.add('f')#添加key
    a.remove('AI')
    
    
    #集合间操作
    a = set('abcde')
    b = set('cdefg')
    
    # &交集
    a & b
    # 结果:{'c', 'd', 'e'}
    
    # |并集
    a | b
    # 结果:{'a', 'b', 'c', 'd', 'e', 'f', 'g'}
    
    # -差集
    a - b
    # 结果:{'a', 'b'}
    
    # 合并
    a.update(b)#集合合并
    

    2.4.2 字典

    # K: V对应
    
    # 初始化
    d1 = {'name': 'jack', 'age': 24}
    d2 = dict({'salary': 9999, 'level': 5})
    
    # 成员判断(针对 key)
    'name' in d1
    'address' in d1
    
    # 新增成员
    d1['address'] = 'beijing'
    
    # 访问:按key访问value:
    d1['name']
    d1.get('name', -1)  # 假如没有name这个key,就返回-1  
    # 访问所有key
    d1.keys()
    # 访问所有value
    d1.values()
    # 访问所有元素
    d1.items()
    
    # 删除成员
    d1.pop('address')  # 返回指定key的值。并弹出元素
    d1.popitem()  #返回整个元素。并弹出
    
    #清空
    d1.clear()
    
    # Key值的选取,能被hash的值都可以做为key,即不可变类型可以做为key值。
    hash('a')
    

    最常用的遍历操作:

    d1 = {'name': 'jack', 'age':24}
    
    for k, v in d1.items():  # 同时遍历key和value
        print(k, v)
        
    for k in d1.keys():      # 遍历key
        print(k)
        
    for v in d1.values():    # 遍历value
        print(v)
    

    2.5 列表生成式(元组推导式、集合推导式、字典推导式)

    # 可以生成元组、列表、集合、字典
    list_value = [0, 1, 2, 3, 4]
    
    list_value_new = [x ** 2 for x in list_value if x >= 3]
    list_value_new
    
    # 从一个列表中
    [i for i in range(9) if i % 2 == 0]
    
    {i for i in range(9) if i % 2 == 0}
    
    # 从两个列表中进行推导
    dict_value = {i: j for i in range(5) for j in range(5)}
    for index, element in dict_value.items():
        print(index, element)
    

    3. 新手错误总结

    • 函数一定要注意的是对传入数据直接进行修改,还是把修改后的数据进行返回
    list_value = [1, 3, 2]
    res = list_value.sort()
    print(res)
    print(list_value)
    print('********')
    list_value = [1, 3, 2]
    res = sorted(list_value)
    print(res)
    print(list_value)
    
    • 忽略了编程和数学之间的联系,比如一些常用的基本概念,如:集合、无穷、函数式编程中的map(映射)等等。比如数学中的集合和Python中的集合有哪些相同点和不同点呢?(不同点在于数学中的集合的元素个数可以是无限个的)。

      下节课会涉及到函数式编程,可以参考阮一峰大佬的文章:http://www.ruanyifeng.com/blog/2012/04/functional_programming.html

    展开全文
  • python基础语法

    2019-11-28 21:57:56
    一、python基础语法 二、 一、python基础语法 python2 python3

    学习目标

    一、python基础语法
    二、
    实例一:学生平时成绩统计
    实例二:温度转换器
    制作exe程序

    一、python基础语法

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    python2
    在这里插入图片描述
    python3
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    练习1.

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    2.用户登录系统

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    www.iconfont.cn

    在这里插入图片描述

    将下载的 png 格式的图标转换为 icon 格式

    https://www.easyicon.net/covert/
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • Python 基础语法Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。像Perl语言一样, Python 源代码同样遵循 GPL(GNU General...

    Python 基础语法

    python.jpg

    Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。

    Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。

    像Perl语言一样, Python 源代码同样遵循 GPL(GNU General Public License)协议。

    谁适合阅读本语法?

    本语法适合想从零开始学习Python编程语言的开发人员。当然本语法也会对一些模块进行深入,让你更好的了解Python的应用。

    学习本语法前你需要了解

    在继续本语法之前,你应该了解一些基本的计算机编程术语。如果你学习过PHP,ASP等编程语言,将有助于你更快的了解Python编程。

    执行Python程序

    对于大多数程序语言,第一个入门编程代码便是"Hello World!",以下代码为使用Python输出"Hello World!":

    实例(Python 2.0+)

    #!/usr/bin/pythonprint"Hello, World!";

    运行实例 ?

    Python 3.0+版本已经把print作为一个内置函数,正确输出"Hello World!"代码如下:

    实例(Python 3.0+)

    #!/usr/bin/python3print("Hello, World!");

    运行实例 ?

    相关文章

    展开全文
  • 1.2 Python基础语法

    万次阅读 2019-05-18 11:16:10
    1.2 Python基础语法1.2 Python基础语法1.2.1 输入和输出:input()输入:Print()输出:format的格式化函数(了解)1.2.2 注释:Python中的注释有单行注释和多行注释:1.2.3 标识符:1.2.4 变量:多个变量赋值1.2.5 行...
  • 【实例简介】精心整理的Python基础语法合集,变量,循环,输入输出等等都有,主要是知道概念和怎么用的 如果打开文件后有文字变成符号的,先把字体改为宋体就正常了【实例截图】【核心代码】目录了解python51....
  • Python 基础语法

    千次阅读 2016-09-09 21:21:51
    第一个Python程序Python语言与Perl,C和Java等语言有许多相似之处。但是,也存在一些差异。交互式编程交互式编程不需要创建脚本文件,是通过 Python 解释器的交互模式进来编写代码。linux上你只需要在命令行中输入 ...
  • python基础语法.pdf

    2019-10-17 14:26:05
    python基础语法.pdf
  • Python基础语法入门

    千人学习 2019-07-01 15:40:47
    python基础语法 】 Python语言介绍、发展史、与其它语言的对比 编程语言分类、解释型vs编译型优缺点 Python环境安装、Pycharm IDE使用 基本语法:变量、常量命名规范、程序执行、编码区别   二进制...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 262,709
精华内容 105,083
关键字:

python基本语法

python 订阅