专栏首页python3python的基础语法

python的基础语法

python数据类型:(按特征划分)

数字类型:

1. ×××:布尔形、长整型L、标准×××

2. 非×××:双精度型、复数、decimal(不是内建类型)

序列类型:

1. 字符串(str)

2. 元组(tuple)

3. 列表(list)

映像类型:

1. 字典(dict)

集合类型:

1. 可变集合(set)

2. 不可变集合(frozenset)

python数据类型(按可变性划分)

可哈希的,不可变数据类型:

1. 数字类型

2. 不可变集合(frozenset)

3. 字符串(str)

4. 元组(tuple)

可变数据类型:

1. 字典(dict)

2. 列表(list)

3. 可变集合(set)

python中引号的作用:

1. ‘  ‘

2. “  “

3. ‘’’  ‘’’

单引号和双引号基本没区别,同样的作用;双引号可以内嵌单引号。三引号作为大段文字的注释。

python的编解码

1. ASCII

2. Unicode

3. UTF-8

python模块

1. import moduleName:导入一个模块

2. from module import functionName:从一个模块中导入一个方法

3. import moduleName as newModuleName:把一个模块重新命名

python用户交互:

使用内置函数:raw_input(),该函数接收一个字符串。

input(),该函数接收一个数字类型

python流程控制:

if … else …

1. split

2. strip

3. len()

for variable in range(1, 10):

while True:

1. break

2. continue

python第一天作业:编写登陆接口

要求:输入用户名密码;认证成功后显示欢迎信息;输错三次后锁定

回顾第一天的主要内容:

python的基本语法、数据类型、导入模块、流程控制。

python文件处理:

读文件:代码展示

f = file(‘filename.txt’, ‘r’)

for line in f.readlines():

line = line.strip(‘\n’).split(‘:’)

print line

文件处理模式:

r:以只读模式打开文件

w:以只写模式打开文件

a:以追加模式打开文件

r+b:以读写模式打开

w+b:以写读模式打开

a+b:以追加及读模式打开

python字符串处理:

str.find(substring, [start [,end]]) #可指范围查找子串,返回索引值,否则返回-1

str.rfind(substring, [start [,end]]) #反向查找

str.index(substring, [start [,end]]) #同find,只是找不到产生valueerror异常

str.rindex(substring, [start [,end]]) #同上反向查找

str.count(substring, [start [,end]]) #返回找到子串的个数

str.lowercase()

str.capitalize()首字母大写

str.lower()转小写

str.upper()转大写

str.swapcase()大小写互换

str.split(str, ‘ ‘)将string转list,以空格分割

str.join(list, ’ ’)将list转string, 以空格分割

len(str)字符串长度

cmp(“my friend”, str) 字符串比较。第一个大返回1

max(‘abcxyz’) 寻找字符串中最大的字符

min(‘abcxyz’) 寻找字符串中最小的字符

python中的列表:

list的方法:

list.append(var) 追加元素

list.insert(index, var) 

list.pop(var) 返回最后一个元素,并从list中删除

list.remove(var) 删除第一次出现的该元素

list.count(var) 该元素在列表中出现的个数

list.index(var) 该元素的位置,无则抛异常

list.extend(list2) 追加list2,到list上。合并

list.sort() 排序

list.reverse() 元素顺序反转

list[1:] 片段操作符,用于子list的提取

[1,2]+[3,4] 为[1,2,3,4]。同extend()

[2]*4 为[2,2,2,2]

del list[1] 删除指定下标的元素

del list[1:3] 删除指定下表范围的元素

list = list1 list是list1的别名,内存地址相同,对list操作就是对list1的操作

list = list2[:] 生成list2的一个copy

python元组:

tuple:常量数组

tuple = (‘a’, ‘b’, ‘c’, ‘d’)

可以用list的[],:操作符提取元素,就是不能直接修改元素

一个小案例:购物车程序

要求用户输入工资,然后打印购物菜单;用户可以不断的购买商品,直到钱不够为止;退出时格式化打印用户已购买的商品和剩余金额。

开发文件替换小程序:

使用方法:

./pythonFile.py ‘source string’  ‘replace string’ filename.txt

./pythonFile.py ‘source string’  ‘replace string’ filename.txt  --bak  filename.txt.bak

python字典DICT:

dict.get(key, 0) 同dict[key], 多了个没有则返回默认值,0。[]没有则抛出异常

dict.has_key(key) 有该键返回True, 否则False

dict.keys() 返回字典键的列表

dict.values() 以列表的形式返回字典中的值, 返回值的列表中可包含重复元素

dict.items() 将所有的字典项以列表方式返回,这些列表中的每一项都来自于(键,值), 但是项在返回时并没有特殊的顺序

dict.update(dict2) 增加合并字典

dict.popitem() 得到一个pair,并从字典中删除它,已空则抛出异常

dict.clear() 清空字典,同del dict

dict.copy() 拷贝字典

dict.cmp(dict1, dict2) 比较字典,(优先级为元素个数、键大小、键值大小

dict1 = dict2 给dict2取个dict1的别名

dict2 = dict.copy() 克隆,另一个拷贝

python中列表与字典的比较:

dict:

1. 查找和插入的速度极快,不会随着key的增加而速度变慢

2. 需要占用大量的内存,内存浪费多。

3. key不可变

4. 默认无序

list:

1. 查找和插入的时间随着元素的增加而增加

2. 占用空间小,内存浪费少。

3. 通过下标查询

4. 有序

python  SET集合

特点:无序;元素不重复

功能:关系测试;去重

set集合运算:

a = set([1, 2, 3, 4])

b = set([3, 4, 5, 6])

a & b 求交集 a.intersection(b)

a | b 求并集 a.union(b)

a – b 求差集 a.difference(b)

a ^ b 求对称差集 a.symmetric_difference(b)

a.issubset(b)  a是b的子集

a.issuperset(b)  a是否包含b

python第二天作业:员工信息表

用户可以模糊查询员工信息

显示匹配了多少条,匹配字符需要高亮显示

回顾第二天的主要内容:

python的文件处理、字符串、列表、元组、字典、集合。

Python第三天主要内容:

1. IDE的使用

2. 模块和模块的常用方法

3. 函数式编程

4. Yield

5. 三元运算

6. Lambda表达式

7. 内置函数

8. 常用模块

9. 装饰器

python中模块和模块的常用方法:

__init__.py文件:在一个目录下面必须要有这个文件才能把该目录下的py文件作为模块导入到另一个py文件里面。

是否为主文件:__name__        if __name__ == ‘__main__’

当前文件路径:__file__

当前文件描述:__doc__

python的函数式编程

参数:  def fun(arg, *args, **kargs):

默认参数: print arg

可变参数: print args

返回值: return ‘success’

内置函数:

help()  dir()  vars()  type()  import temp  reload(temp)  id()

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

我来说两句

0 条评论
登录 后参与评论

相关文章

  • PHP XDebug 远程调试

    然后重点来了,一定不要忘记开放上面配置的xdebug.remote_port端口号,开放此端口号、开放此端口号、开放此端口号。

    许杨淼淼
  • java中的IO操作

    使用FileReader读取 用来读取字符文件的便捷类。此类的构造方法假定默认字符编码和默认字节缓冲区大小都是适当的。要自己指定这些值,可以先在 F...

    爱撒谎的男孩
  • scrapy初试

    定义item Item是保存爬取到的数据的容器;其使用方法和python字典类似, 并且提供了额外保护机制来避免拼写错误导致的未定义字段错误。 类似在...

    爱撒谎的男孩
  • 2020腾讯犀牛鸟精英人才培养计划课题介绍(二)——AI 医疗

    ? 精英人才培养计划是一项校企联合人才培养项目,入选学生将受到业界顶尖技术团队与高校导师的联合指导及培养。培养期间,学生将获得3个月以上到访腾讯开展科研访问的...

    腾讯高校合作
  • scrapy架构初探

    URL谁来准备呢?看样子是Spider自己来准备,那么可以猜测Scrapy架构部分(不包括Spider)主要做事件调度,不管网址的存储。看起来类似GooS...

    爱撒谎的男孩
  • 牛X,试用了下GitHub上22万Star的第一抢票神器,3秒钟抢到

    这很可能是全GitHub最德高望重的购票小助手了,功能一直在更新,且现已支持Python 3.6以上版本。

    IT大咖说
  • Neuron脑影像机器学习: 表征、模式信息与大脑特征:从神经元到神经影像

    人们对于神经影像的研究已不满足于对大脑局部的研究,开始探索汇集了更多分散于多个脑系统的脑活动预测模型。这里我们回顾多变量预测模型如何对定量可重复的预测结果进行优...

    用户1279583
  • scrapy大战京东商城

    作者说 本人秉着方便他人的想法才开始写技术文章的,因为对于自学的人来说想要找到系统的学习教程很困难,这一点我深有体会,我也是在不断的摸索中才小有所成,如果...

    爱撒谎的男孩

扫码关注云+社区

领取腾讯云代金券