Python项目案例开发从入门到实战-1.2 Python语法基础
1.2 Python语法基础
1.2.1 Python数据类型
- 数值类型
整型(int);浮点型(float);复数(complex),以j或J结尾,如2+3j - 字符串
- 布尔类型
空值,用Null表示
1.2.2 序列数据结构
- 列表(List)
------------------------------------------------创建
list1 = ['中国','美国','2017','2019']
list2 = [1,2,3,4,5]
list3 = ["a","b","c"]
------------------------------------------------访问
print("List1[0]", list[0])
print("List1[1:5]", list[1:5])
------------------------------------------------更新
list1[1]='加拿大'
------------------------------------------------删除
方法一:del list1[1]
方法二:list1.remove('美国')
方法三:list1.pop(1)
#注:若写list1.pop(),即没有参数时将弹出最后一个元素
------------------------------------------------添加
list1.append(123)
------------------------------------------------多维列表
list4 = [["电脑","手机"],["wifi","cellular"]]
------------------------------------------------生成列表
L = list(range(1,10))
或
for x in range(1,10):
L.append(x*x)
或
[x*x for x in range(1,10)]
还可以
[x*x for x in range(1,10) if x%2==0]
------------------------------------------------列表内容变小写字母
[s.lower() for s in L]
- 元组(tuple)
与列表类似,但元组的元素不能修改,且元组使用小括号(),而列表使用[]。
元组的元素类型也可以不相同
------------------------------------------------创建
tup1 = ('中国','美国',1997,2000)
tup2 = (1,2,3,4)
tup3 = "a","b"."c","d"
tup = () #创建空元组
当元组中只包含一个元素时,需要在第一个元素后面添加逗号
tup1 = (50,)
------------------------------------------------访问
print("tup1[0]", tup1[0])
print("tup[1:5]", tup1[1:5])
print(tup2[2:]) #切片,从第三个元素开始输出,直到最后
print(tup2*2) #输出元组两次
------------------------------------------------连接
tuple不能修改但可以组合
tup3 = tup1+tup2
------------------------------------------------删除
del tup
------------------------------------------------列表与元组的转换
list1 = list(tup)
tup1 = tuple(list)
- 字典(dict)
------------------------------------------------创建
d = {key1:value1,key:value2}
例:
dict = {'xw':'19','lw':'50'}
dict = {'xw':'19',34:50} 类型可以不同
------------------------------------------------访问
dict = {'Name':'大明','Age':18,'Class':'计科二班'}
print("dict[Name]:",dict['Name'])
------------------------------------------------修改(修改、增加)
dict['Age'] = 30
dict['School']="举个例子"
------------------------------------------------删除
方法一:del dict['Name']
方法二:dict.clear()
方法三:del dict
------------------------------------------------in运算
用于判断字典是否存在该key
例:
print('Age' in dict) 等价于print(dict.has_key('Age'))
输出为:True
------------------------------------------------获取字典所有值
print(dict.value())
------------------------------------------------items()方法
for key,value in dict.items():
print(key,value)
- 集合(set)
------------------------------------------------创建
student={"小明","小红","小绿"}
------------------------------------------------成员测试
if('小明' in student):
print("小明在集合中")
else:
print("小明不在集合中")
------------------------------------------------集合运算
差集-:print("集合a与b的差集:",a-b)
并集|:print("集合a与b的并集:",a|b)
交集$:print("集合a与b的差集:",a&b)
不同时存在^:print("集合a与b中不同时存在的元素:",a^b)
1.2.3 Python控制语句
- 选择结构
if expression:
...
else:
...
或
if expression:
...
elif:
...
else:
...
- 循环结构
while expression:
...
1.2.4 Python函数与模块
- 函数的定义
def 函数名(函数参数):
...
return
没有return语句或return后没有表达式,则返回None
------------------------------------------------函数的使用
函数定义前不允许调用该函数
- 闭包(closure)
指函数的嵌套,即在函数内部可在定义一个函数 - 模块(module)
类似于其他语言的类库
------------------------------------------------导入模块
方法一:import module_name
调用:module_name.function_name
方法二:from module_name import *
也可以:from module_name import fuction1_name,function2_name...
------------------------------------------------定义自己的module
建立文件name.py,文件中定义函数function()
使用时正常导入调用即可
Python项目案例开发从入门到实战-1.2 Python语法基础的更多相关文章
- python全栈开发从入门到放弃之socket网络编程基础
网络编程基础 一 客户端/服务器架构 1.硬件C/S架构(打印机) 2.软件C/S架构 互联网中处处是C/S架构 如黄色网站是服务端,你的浏览器是客户端(B/S架构也是C/S架构的一种) 腾讯作为服务 ...
- 《ASP.NET Core跨平台开发从入门到实战》Web API自定义格式化protobuf
<ASP.NET Core跨平台开发从入门到实战>样章节 Web API自定义格式化protobuf. 样章 Protocol Buffers 是一种轻便高效的结构化数据存储格式,可以用于 ...
- python项目案例
python项目案例1:----此学习案例用python3编写,摘自明日科技,感谢! 学生管理系统: 功能描述:具有增删改查,排序,保存并显示学生的全部信息. 1.主界面---函数menu(),显示功 ...
- Django 入门项目案例开发(上)
关注微信公众号:FocusBI 查看更多文章:加QQ群:808774277 获取学习资料和一起探讨问题. Django 入门案例开发(中) http://www.cnblogs.com/focusBI ...
- 【Python高级工程师之路】入门+进阶+实战+爬虫+数据分析整套教程
点击了解更多Python课程>>> 全网最新最全python高级工程师全套视频教程学完月薪平均2万 什么是Python? Python是一门面向对象的编程语言,它相对于其他语言,更加 ...
- python全栈开发从入门到放弃之迭代器生成器
1.python中的for循环 l = [1,2,3,4,5,6] for i in l: #根据索引取值 print(i) 输出结果: 1 2 3 4 5 6 2.iterable 可迭代的 可迭 ...
- python全栈开发从入门到放弃之socket并发编程多线程
一 threading模块介绍 multiprocess模块的完全模仿了threading模块的接口,二者在使用层面,有很大的相似性,因而不再详细介绍 二 开启线程的两种方式 from threadi ...
- python全栈开发从入门到放弃之socket并发编程多线程GIL
一 介绍 ''' 定义: In CPython, the global interpreter lock, or GIL, is a mutex that prevents multiple nati ...
- python全栈开发从入门到放弃之字符编码
一 了解字符编码的知识储备 1. 计算机基础知识(三幅图) 2. 文本编辑器存取文件的原理(nodepad++,pycharm,word) 打开编辑器就打开了启动了一个进程,是在内存中 ...
- python 微服务开发书中几个方便的python框架
python 微服务开发是一本讲python 如果进行微服务开发的实战类书籍,里面包含了几个很不错的python 模块,记录下,方便后期回顾学习 处理并发的模块 greenlet && ...
随机推荐
- 根据STM32CubeMX软件创建STM32芯片的Altium Designer原理图库教程-转载
(24条消息) 根据STM32CubeMX软件创建STM32芯片的Altium Designer原理图库教程_奥比克_阿彦少爷的博客-CSDN博客_stm32原理图库 1所需软件及环境1.STM32C ...
- Node Sass version 7.0.1 is incompatible with ^4.0.0 node-sass 问题
执行旧版项目安装依赖时报错 卸载 npm uninstall node-sass sass-loader 安装(need Python27) npm install sass-loader@7.3.1 ...
- GitLab + Rainbond 打造Devops流程
GitLab + Rainbond 打造Devops流程 流程 预设项目有两个分支,dev和master dev分支对应dev环境 master分支对应test环境和prod环境 开发在dev中编写代 ...
- Jmeter进行服务器性能压力测试遇问题及解决方案
最近再给公司的一个项目进行服务器性能进行压测,要出一些报告图形展示,放弃了用boom工具我选择了用jmeter工具进行压测过程中遇到了一些问题下面将一一列出及解决方案希望帮助到你们!!! 1.装第三方 ...
- iOS开发之UIImage压缩处理
IOS中UIImage的数据量压缩有两种方式,一种是图片尺寸不变,降低图片分辨率,代码方法为: //1.0为压缩系数,介于0~1之间.压缩系数越小,会大大降低图片清晰度 NSData *data = ...
- centos7编译安装LNMP服务架构
CentOS7.4 源码编译安装LNMP 1.基于CentOS7.4源码编译安装得lnmp 系统环境CentOS 7.4 系统最小化安装,只安装了一些常用包(vim.lirzs.gcc*.wget. ...
- tzoj:3613 突破包围
http://www.tzcoder.cn/acmhome/problemdetail.do?&method=showdetail&id=3613 算出两两之间min距离,然后从起点开 ...
- java8中CompletableFuture异步处理超时
java8中CompletableFuture异步处理超时的方法 Java 8 的 CompletableFuture 并没有 timeout 机制,虽然可以在 get 的时候指定 timeout,但 ...
- 【STM32】简述串口中断流程
串口中断的实现(函数名参考MX生成代码) 初始化: 1.void MX_USART1_UART_Init() 基于UART_HandleTypeDef huart,对huart的成员进行配置,并将数据 ...
- CCF 202009-2 风险人群筛查
#include <iostream> #include <bits/stdc++.h> #include <string> using namespace std ...