专栏首页python3Python全栈开发之基础语法

Python全栈开发之基础语法

No.1 Python语言介绍

详情见百度百科。。。

No.2 Python是一门怎么样的语言

详情在百度百科。。。

No.3 Python能做什么

网络应用、桌面应用、系统运维、机器学习、科学计算。。。

  • 网络应用 Django/Flask/Tornado
  • 桌面应用 PyQt/PySide/wxPython/PyGTK
  • 系统运维 psutil/IPy/dnspython/difflib
  • 机器学习 Scikit-Learn/Statsmodels/PyMC/Shogun
  • 科学计算 NumPy/SciPy/Matplotlib No.4 Python的优缺点
  • 简单,开发效率高,高级语言,跨平台。。。
  • 速度慢,代码不能加密,GIL锁。。。 No.5 Python的安装
  • Windows 下载Anaconda,点点点。。。
  • Linux 下载Anaconda,解压,安装。。。 No.6 注释
  • 单行注释 # 一行
  • 多行注释 """一堆""" OR '''一堆''' No.7 关键字
  • 具有特殊功能的标识符,这就是所谓的关键字 import keyword print(keyword.kwlist) No.8 格式化

格式符号

备注

%c

字符

%s

字符串

%i

有符号十进制整数

%d

无符号十进制整数

%o

八进制整数

%x

十六进制整数(小写字母)

%X

十六进制整数(大写字母)

%f

浮点数

No.9 变量

Python的变量就是一个便利贴

  • 变量名只能是字母、数字、下划线的组合
  • 变量的第一个字符不能是数字
  • 变量名不能和关键字重名

No.10 运算符

  • 算术运算符 运算符 备注 + 加 - 减 * 乘 ** 幂 / 除 // 整除 % 模
  • 赋值运算符 运算符 实例 = a = 1 += a += 1 <=> a = a + 1 -= a -= 1 <=> a = a -1 *= a = 2 <=> a = a 2 **= a = 2 <=> a = a 2 /= a /= 2 <=> a = a / 2 //= a //= 2 <=> a = a // 2 %= a %= 2 <=> a = a % 2
  • 关系运算符 运算符 备注 == 等于 != 不等于 > 大于 < 小于 >= 大于等于 <= 小于等于
  • 逻辑运算符 运算符 备注 and x和y均为真,返回真 or x或者y为真,返回真 not x为假,返回真
  • 位运算符 运算符 备注 & 按位与运算符,参与运算的两个值,如果相同位都为1,则结果为1 | 按位或运算符,参与运算的两个值,只要相同位一个为1,则结果为1 ^ 按位异或运算符,参与运算的两个值,当相同位不同时,则结果为1 ~ 按位取反运算符,即1变0,0变1 << 左移运算符,运算符的各二进制位向左移动若干位 >> 右移运算符,运算符的各二进制位向右移动若干位
  • 成员运算符 运算符 备注 in 如果在序列中存在返回真 not in 如果在序列中不存在返回真
  • 身份运算符 运算符 备注 is 判断两个标识符是不是引用自一个对象 is not 判断两个标识符是不是不是引用自一个对象

No.11常用数据类型转换

  • index(x[,base]) 将x转换为一个指定进制的整数,默认为十进制
  • long(x[,base]) 将x转换为一个指定进制的整数,默认为十进制
  • float(x) 将x转换为一个浮点数
  • str(x) 将x转换为一个字符串
  • repr(x) 将x转换为表达式字符串
  • eval(x) 用来计算字符串表达式并返回一个对象
  • tuple(x) 将x转换成一个元祖
  • list(x) 将x转换成一个列表
  • chr(x) 将x(整数)转换为字符形式
  • ord(x) 将x(字符)转换成整数形式
  • hex(x) 将x转换成十六进制
  • oct(x) 将x转换成八进制
  • bin(x) 将x转换成二进制

No.12 判断语句

  • if-else
if 条件:
    do something
else:
    do something
  • elif if 条件: do something elif 条件: do something
  • if嵌套 if 条件: if 条件: do something elif 条件: do something elif 条件 if 条件: do something elif 条件: do something else: if 条件: do something elif 条件: do something

No.13 循环语句

  • while
while 条件:
    do something
栗子:
i = 0
sum = 0
while i < 100:
    sum += i 
    i += 1
  • while循环嵌套
while 条件:
    do something
    while 条件:
        do something
栗子:
i = 1
while i <= 9:
    j = 1
    while j <= i
        print("%d*%d=%-2d"%(j,i,i*j),end='')
        j += 1
    print('\n')
    i += 1
  • for循环 在Python中for循环可以遍历任何序列
for 临时变量 in 序列:
    do something
else:
    do something
栗子:
name = 'kernel'
for i in name:
    print(i)
  • break和continue break的作用是用来结束整个循环 栗子: i = 0 while i <= 100: i += 1 if i == 5: break continue的作用是用来结束本次循环,然后执行下一次循环
栗子:
i = 0
while i <= 100:
    i += 1
    if i == 5:
        continue

No.14 简述拷贝

要理解深浅拷贝需要理解下面的概念 变量->引用->对象->切片->拷贝 变量是便利贴 对象是被分配的一块内存,存储其代表的值 引用是自动形成的从变量到对象的指针 不变对象是指一旦创建就不可以改变的对象,例如字符串、数字、元组 可变对象是指可以改变的对象,例如列表、字典

  • 不可变对象的赋值
a = 1
b = a
print(a) # 1
print(b) # 1
b = 2
print(a) # 1,并没有随着b的改变而改变
print(b) # 2
  • 可变对象的赋值
a = [1,2,3,4]
b = a
print(a) # [1,2,3,4]
print(b) # [1,2,3,4]
b[3] = 5
print(a) # [1,2,3,5]
print(b) # [1,2,3,5]
  • 深浅拷贝 浅拷贝:只拷贝顶级的对象 深拷贝:拷贝所有对象
import copy
l1 = [1,2,3,4,['a','b']]
l2 = copy.copy(l1)
print(l1) # [1,2,3,4,['a','b']]
print(l2) # [1,2,3,4,['a','b']]
l2[0] = 11
l2[4][0] = 'aa'
print(l1) # [11,2,3,4,['a','b']]
print(l2) # [11,2,3,4,['aa','b']]
import copy
l1 = [1,2,3,4,['a','b']]
l2 = copy.deepcopy(l1)
print(l1) # [1,2,3,4,['a','b']]
print(l2) # [1,2,3,4,['a','b']]
l2[0] = 11
l2[4][0] = 'aa'
print(l1) # [11,2,3,4,['aa','b']]
print(l2) # [11,2,3,4,['aa','b']]

结论: 深浅拷贝都是对源对象的复制,占用不同的内存空间 如果源对象只有一级目录的话,源做任何改动,不影响深浅拷贝对象 如果源对象不止一级目录的话,源做任何改动,都要影响浅拷贝,但不影响深拷贝 序列对象的切片其实是浅拷贝,即只拷贝顶级的对象

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Python 学习第二章

      这里说一下字符串拼接,在第一章的时候最后一张图显示出字符串拼接。这里我们演示一下怎么用,先看个简单的程序如下:

    py3study
  • python文档

    #['BPF', 'LOG4', 'NV_MAGICCONST', 'RECIP_BPF', 'Random', 'SG_MAGICCONST', #'Syst...

    py3study
  • 课时33:异常处理:你不可能总是对的2

    以上代码在“我为什么是一个文档.txt”这个文档不存在的时候,Python就会报错说文件不存在:

    py3study
  • python运算符

    算数运算符 符号描述例子-减法3 - 2=1+加法3 + 2=5*乘法3 * 2=6/除法4 / 2=2%取模 取余数3 % 2=1**幂2 ** 3=8//取...

    零月
  • Python 基础语法

    一份执着✘
  • 从选型到实现——企业级云端大数据平台最佳实践

    IT大咖说
  • SAP最佳业务实践:FI–应付账款(158)-2 F-47预付款请求

    4.1 创建供应商主记录 在此活动中,可以创建供应商主记录。 要执行该活动,使用此凭证中的主数据,运行 创建供应商主数据 (155.14)业务情景中的流程。 ...

    SAP最佳业务实践
  • LeetCode 832. Flipping an Image

    Given a binary matrix A, we want to flip the image horizontally, then invert it,...

    大学里的混子
  • LeetCode - 有序数组的平方

    原题地址:https://leetcode-cn.com/problems/squares-of-a-sorted-array/

    晓痴
  • 揭秘⼤数据安全

    2018年8月28日,网传华住旗下多个连锁酒店开房信息数据遭泄露售卖。泄露的数据包含汉庭、美爵、禧玥、漫心、诺富特、美居、CitiGo、桔子等酒店用户详细信息。...

    ThoughtWorks

扫码关注云+社区

领取腾讯云代金券