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 && ...
随机推荐
- TypeScript 声明文件
TypeScript 声明文件 TypeScript 作为 JavaScript 的超集,在开发过程中不可避免要引用其他第三方的 JavaScript 的库.虽然通过直接引用可以调用库的类和方法,但是 ...
- URL Scheme获取
支付宝链接或小程序获取URL Scheme 小程序(以行程卡小程序为例): URL解码https://c.runoob.com/front-end/695/ JS网址解码https://jsrun.n ...
- POJ 1830 开关问题 异或高斯消元
题目链接 将题目转化为矩乘问题 构建一个 \(n \times n\) 的开关信息矩阵,其中第 \(i\) 列第 \(j\) 行的元素为 \(0 / 1\) 代表在改变开关 \(i\) 的情况下开关 ...
- sudo: port: command not found 报错解决方案
mac本安装graphviz的方法是: sudo port install graphviz 执行报错: sudo: port: command not found 其实是未设置环境变量,执行下面的语 ...
- React整洁的代码的一些原则
1. Model is everything models are the heart of your app. If you have models separated from th rest ...
- YML Exception 以及 java.nio.charset.MalformedInputException: Input length = 1
在springboot项目中,第一次遇到的问题是 YML Exception java.nio.charset.MalformedInputException: Input length = 1 ,此 ...
- 高级纹理以及复杂而真实的应用——ShaderCp10
--20.9.7 这章主要分成三个部分 立方体纹理(cubemap) 渲染纹理(RenderTexture,rt) 和程序纹理 一.立方体纹理 立方体纹理顾名思义是一种三维的纹理形状类似于立方体,由六 ...
- 打车起步价8元(3KM以内) 超过3KM,超出的每公里1.2元 超过5KM,超出的每公里1.5元 请在键盘上接收公里数,得出总价。
import java.util.Scanner; public class Taxi { public static void main(String []agrs){ Scanner s = ne ...
- HTML——VSCODE配置笔记
# 使用VSCODE编辑前端代码 ### 1.问题一:无法根据!快速生成html标准代码 (1).首先看文件命名是否出错,即文件名后缀名.html (2).第一步没出错,就在新建文件的编辑状态下拨动C ...
- luogu 1344
首先题意就是裸的最小割啦 然后考虑如何统计边数 这里有一个trick: 我们设定一个大于$m$的阈值,对于每条边的边权我们乘这个阈值+1后跑最小割,得到的答案除以阈值就是真正的最小割,取模阈值后就是最 ...