Python基础语法一
所有内容都在代码上,有相关代码注释
# #代表注释
# 区分大小写、以回车换行结束
# 多行编写可以使用反斜杠 \
# 缩进代表一个代码块 #数值
#int类型可以使用下划线分割
c=123_456_789
print(c) #输出内容:123456789
#二进制以0b开头
b=0b1001
print(b) #输出内容:9(控制台输出都为十进制)
#16进制以0x开头
a=0x1a1
print(a) #输出内容:417 #字符串
#可以是单引号、可以是双引号
d='测试'
print(d) #输出内容:测试
d="测试2"
print(d) #输出内容:测试2
#银行嵌套
d="小明说:‘测试2’"
print(d) #输出内容:小明说:‘测试2’
#多行字符串,不保留格式,由于引号不能跨行使用,如果使用,需要使用反斜杠
d='小明\
小白'
print(d) #输出内容:小明小白
#多行字符串,保留格式(使用三引号)
d='''小明
小白'''
print(d) #输出内容小明:小白,其中小明小白中间换行
#转义字符
# \' 表示 '
# \" 表示 "
# \t 表示 制表符(等同于Tab键)
# \n 表示换行
# \\ 表示 \
d="小明说:\'测试\'第三次\n可以\t结束\\"
print(d) #输出内容:分为两行,第一行(小明说:'测试'第三次),第二行(可以 结束\) #字符串拼接(四种方式:拼串方式、传参方式、占位符方式、格式化字符串方式)
#1、拼串方式
print("hello"+"word") #输出内容:helloword
#python中字符串不能与非字符串拼接,例如:print("hello"+100) 会报错
#2、使用多传参方式
print("d",100) #输出内容:d 100
#3、使用占位符%s
#占位符:%s(字符串占位符) %f(浮点数占位符) %d(整数占位符)
# %s(字符串占位符,%s要写在原字符串内部)
print("d%s"%200) #输出内容:d200
#多个占位符(多个值需要用括号)
print("d%s%s"%(200,'测试')) #输出内容:d200测试
#指定字符串长度(s前的数字为几,即拼接多少字符串,如果不够,前面用空格补充,如果超出,正常输出)
print("d%5s"%200) #输出内容:d 200
print("d%3s"%1234) #输出内容:d1234
#强制控制长度(s前的数字为小数,即最小几位最大几位,如果不够,前面用空格补充,如果超出,将从前截取最大位数输出)
print("d%3.5s"%12) #输出内容:d 12
print("d%3.5s"%123456) #输出内容:d12345
# %f(浮点数占位符) 如果不够,后面补0,不过超出,四舍五入取指定位数
print("%.2f"%123.4) #输出内容:123.40
print("%.2f"%123.456) #输出内容:123.46
# %d(整数占位符) 直接输出整数位(向下取整)
print("%.2d"%123.4) #输出内容:123
#4、格式化字符串
#字符串添加f(大小写都可以)创建格式化字符串
a = 'hello'
b = 'word'
c = f'c:测试:{a}-{b}'
print(c) #输出内容: c:测试:hello-word #字符串复制(使用*)
a="abc"
b=5
print(a*b) #输出内容: abcabcabcabcabc #布尔值(首字母大写)
a = True
b = False
print(a,b) #输出内容: True False # None(首字母大写)
a = None
print(a) #输出内容: None #类型校验:type函数
print(type(10)) #输出内容: <class 'int'>
print(type(1.01)) #输出内容: <class 'float'>
print(type("a")) #输出内容: <class 'str'>
print(type(True)) #输出内容: <class 'bool'>
print(type(None)) #输出内容: <class 'NoneType'> #类型转换 int() float() str() bool()
a = True;
print(int(a)) #输出内容: 1
a = 11.11
print(int(a)) #输出内容: 11 #算数运算
print(10/3) #输出内容: 3.3333333333333335
print(10//3) # // 整除 输出内容: 3
print(10**5) # ** 次方 输出内容: 100000
print(10000**0.5) # ** 平方根 输出内容: 100 #判断 判断后面跟冒号
a = 10
if a>5 and a<20:
print('aaa')
elif a>=20:
print('bbb')
else:
print('ccc') #while break continue
a=1
while a<=100:
a=a+1
if a<50:
continue;
print(a)
if a == 70:
break #input函数
#如果是第一次使用sublime,则会出现按回车后没有执行的问题,需要安装SublimeREPL
#可按照https://blog.csdn.net/Koevas/article/details/86098849进行设置安装即可
#测试时可放开,为了运行流畅,暂时注释掉
#a = input("请输入:")
#print("您输入的是%s"%a)
#print("d%s"%200) #输出内容:d200
#print('123') #列表
list1 = ["a","b","c","d","e","f"]
print(type(list1))
print(list1)
#列表索引
print(list1[2])
#负数意思为倒叙取数
print(list1[-1])
#索引范围 左包右不包(左边包括索引位置值,右边不包括索引位置值)
print(list1[2:5]) #输出内容:['c', 'd', 'e']
#步长取数 最后一个参数为步长
print(list1[0:7:2]) #输出内容:['a', 'c', 'e']
#in / not in
print("a" in list1) #输出内容:True
print("k" in list1) #输出内容:False
#len()、min()、max()
list1 = [1,2,3,4,7,8,9,3,0,8,9,3,6]
print(min(list1)) #输出内容:0
print(max(list1)) #输出内容:9
print(len(list1)) #输出内容:13
#获取索引位置 第一个参数为元素,第二个参数为起始位置
print(list1.index(3)) #输出内容:2
print(list1.index(3,4)) #输出内容:7
#count() 统计指定元素出现次数
print(list1.count(8)) #输出内容:2
#列表替换值
list1 = ["a","b","c","d"]
list1[0] = "b"
print(list1) #输出内容:['b', 'b', 'c', 'd']
#区间替换 区间替换最好保持N对N,即区间有几个就赋值几个
#如果赋值多于区间数,替换后剩余的会拼接在替换的字符串后
#如果赋值小于区间去,则会按顺序替换,多余的待替换数据将被删除
list1 = ["a","b","c","d"]
list1[0:2] = ["aaa","bbb","ccc"]
print(list1) #输出内容:['aaa', 'bbb', 'ccc', 'c', 'd']
list1 = ["a","b","c","d"]
list1[0:2] = ["aaa"]
print(list1) #输出内容:['aaa', 'c', 'd']
#删除元素del
list1 = ["a","b","c","d"]
del list1[3]
print(list1) #输出内容:['b', 'b', 'c']
#区间删除
list1 = ["a","b","c","d"]
del list1[0:2]
print(list1) #输出内容:['c', 'd']
#步频删除
list1 = ["a","b","c","d","e","f","g","h"]
del list1[::2]
print(list1) #输出内容:['b', 'd', 'f', 'h']
#添加append()函数
list1 = ['a','b']
list1.append("c")
print(list1) #输出内容:['a', 'b', 'c']
#insert()函数 指定位置插入元素,其余元素后移
list1.insert(2,"e")
print(list1) #输出内容:['a', 'b', 'e', 'c']
#extend()函数 将集合添加到原有集合后面
list1.extend(["f","g"])
print(list1) #输出内容:['a', 'b', 'e', 'c', 'f', 'g']
#clear()函数 清空集合
list1.clear()
print(list1) #输出内容:[]
#pop()函数 根据索引删除,返回内容为被删除的元素
list1 = ["a","b","c","d","e","f","g","h"]
print(list1.pop(3)) #输出内容:d
#remove()函数 根据元素内容删除,如果有多个,删除第一个
list1 = ['a','a','b','b','c']
list1.remove('b')
print(list1) #输出内容:['a', 'a', 'b', 'c']
#reverse()
list1.reverse()
print(list1) #输出内容:['c', 'b', 'a', 'a']
#sort()排序函数
list1 = list('kashf')
list1.sort()
print(list1) #输出内容:['a', 'f', 'h', 'k', 's']
#降序排列
list1.sort(reverse=True)
print(list1) #输出内容:['s', 'k', 'h', 'f', 'a']
#遍历
list1 = list('kashf')
for s in list1:
print(s) #range()函数 三个参数分别为:起始位置,结束为止,步频;如果只有一个参数,默认为结束位置
r = range(5)
print(list(r)) #输出内容:[0, 1, 2, 3, 4]
r = range(0,10,2)
print(list(r)) #输出内容:[0, 2, 4, 6, 8]
r = range(10,0,-3)
print(list(r)) #输出内容:[10, 7, 4, 1] #元组
my_tuple = 10,20,30,40
print(my_tuple , type(my_tuple))
#元组解包,一对一解包,也可以在变量前加*做解包,一次解包只能使用一个*
a,b,c,d = my_tuple
print("a=",a)
print("b=",b)
print("c=",c)
print("d=",d)
a,*b,c = my_tuple #输出内容:b= [20, 30]
print("a=",a)
print("b=",b)
print("c=",c) #对比 ==对比的是值 is对比的是物理地址
a = [1,2,3]
b = [1,2,3]
print(a==b) #输出内容:True
print(a is b) #输出内容:False
b = a
print(a==b) #输出内容:True
print(a is b) #输出内容:True #字典 类似于java中的map
#创建字典方式1
dict1 = {
'name':'lcl',
'age':'',
'gen':'man'
}
print(dict1,type(dict1)) #输出内容:{'name': 'lcl', 'age': '18', 'gen': 'man'} <class 'dict'>
print(dict1['name']) #输出内容:lcl
#创建字典方式2 属性值不能加引号,否则报错
dict2 = dict(name='lcl2',age='')
print(dict2['name']) #输出内容:lcl2
#创建字典方式3
dict3 = dict([('name','lcl3'),('age',''),('gen','man')])
print(dict3['name']) #输出内容:lcl3
#获取键值对个数len()
print(len(dict3)) #输出内容:3
#判断字典中是否存在某个键 in / not in
print('name' in dict3) #输出内容:True
print('name' not in dict3) #输出内容:False
print('kk' in dict3) #输出内容:False
print('kk' not in dict3) #输出内容:True
#如果不存在key,增加默认值返回
print(dict3.get('name', '不存在')) #输出内容:lcl3
print(dict3.get('kk', '不存在')) #输出内容:不存在
#替换
dict3['name'] = 'lclNew'
print(dict3.get('name', '不存在')) #输出内容:lclNew
#setdefault 新增键值对
#如果原key不存在,则新增成功,返回新增的value;
#如果原key存在,新增失败,返回原有的value
print(dict3.setdefault('name','lcl'))
print(dict3.setdefault('add','beijing'))
print(len(dict3)) #输出内容:4
#update 两个字典拼接
dirc1 = dict(name='lcl1',age='')
dirc2 = dict([('gen','man'),('add','beijing')])
dirc1.update(dirc2)
print(len(dirc1)) #输出内容:4
print(len(dirc2)) #输出内容:2
print(dirc1['add']) #输出内容:beijing
#删除键值对 del
del dirc1['name']
print(len(dirc1)) #输出内容:3
print(dirc1.get('name','已删除')) #输出内容:已删除
#popitem 随机删除一个键值对(一般是最后一个),返回值为删除的键值对
dict3 = dict([('name','lcl3'),('age',''),('gen','man')])
print(dict3.popitem()) #输出内容:('gen', 'man')
print(len(dict3)) #输出内容:2
print(dict3.get('gen','已被随机删除')) #输出内容:已被随机删除
#pop 根据key删除键值对,返回value
print(dict3.pop('name')) #输出内容:lcl3
print(dict3.get('name','已被使用pop删除')) #输出内容:已被使用pop删除
#清空字典
dict3 = dict([('name','lcl3'),('age',''),('gen','man')])
dict3.clear()
print(len(dict3)) #输出内容:0
#copy
dict3 = dict([('name','lcl3'),('age',''),('gen','man')])
dict4 = dict3.copy()
print(dict4['name']) #输出内容:lcl3
print(dict3 == dict4) #输出内容:True
print(dict3 is dict4) #输出内容:False
#字典遍历
#方式一
for key in dict3:
print(key,"=",dict3[key])
#方式二
for key in dict3.keys():
print(key,"=",dict3[key])
#方式三
for key,value in dict3.items():
print(key,"=",value) #set集合
set1 = {1,2,3,4,5}
print(set1) #输出内容:{1, 2, 3, 4, 5}
set1 = set([1,2,4,6,8])
print(set1) #输出内容:{1, 2, 4, 6, 8}
set1 = set('hello')
print(set1) #输出内容:{'h', 'o', 'l', 'e'}
#如果将字典转为set集合,则只转key
dict3 = dict([('name','lcl3'),('age',''),('gen','man')])
set1 = set(dict3)
print(set1) #输出内容:{'age', 'gen', 'name'}
#添加元素使用add()、两个set集合拼接使用update()、删除指定元素使用remove()
#浅复制使用copy()、清空集合使用clear()
#集合运算
set1 = {1,2,3,4}
set2 = {3,4,5,6}
#交集 &
print(set1 & set2) #输出内容:{3, 4}
#并集 |
print(set1 | set2) #输出内容:{1, 2, 3, 4, 5, 6}
#异或集 ^ (只在一个集合中出现,交集的反向集合)
print(set1 ^ set2) #输出内容:{1, 2, 5, 6}
# <= 校验是否为子集
print({1,2,3} <= {1,2,3,4}) #输出内容:True
print({1,2,3} <= {1,2,4}) #输出内容:False
# < 校验是否为真子集
print({1,2,3} < {1,2,3,4}) #输出内容:True
print({1,2,3} < {1,2,3}) #输出内容:False
#同样,也有反向校验 >=和>
Python基础语法一的更多相关文章
- 从零开始学 Web 之 ES6(三)ES6基础语法一
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- Razor基础语法一
目录: 什么是Razor? 渲染HTML Razor语法 隐式 Razor 表达式 显式 Razor 表达式 什么是Razor? Razor是基于服务端代码转换成网页的标记语法.语法主要包括Razor ...
- PHP入门笔记--基础语法一
一.基本语法 php标记 <?php ?> php代码结束标记 三种注释 // /**/ # 二.类型 四种标量类型:boolean, integer, float, string 三种复 ...
- python 基础部分重点复习整理--从意识那天开始进阶--已结
pythonic 风格编码 入门python好博客 进阶大纲 有趣的灵魂 老齐的教程 老齐还整理了很多精华 听说 fluent python + pro python 这两本书还不错! 元组三种遍历, ...
- python 列表推导式 - python基础入门(16)
截止到目前为止,python基础内容已经学习了50%左右,在学习编程过程中,我们不仅要学习python语法,同时也需要学习如何把自己代码写的更美观,效率更高. 一.什么是推导式 推导式是从一个或者多个 ...
- Python基础之基础知识
目录 Python基础知识 Python 变量 Python 字符编码 Python 二进制 Python 十六进制 Python bytes Python 注释 Python 用户输入 Python ...
- python接口测试自动化之python基础语法
一.pycharm的使用和python基本语法 (一).pycharm的使用和python环境 1.python以及pycharm的安装 python 的版本选择:3.x 版本,不要安装2.x 版本, ...
- Python开发【第二篇】:Python基础知识
Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...
- python基础知识理解
一.概述 看了一天的python基础语法,基本对python语法有了一个大概的了解(其实之前断断续续也看过python),学习网址:Python 基础教程.因为之前我学过C++,因此在学习python ...
随机推荐
- Rocket - diplomacy - AddressDecoder
https://mp.weixin.qq.com/s/UHGq74sEd9mcG5Q3f-g3mA 介绍AddressDecoder的实现. 1. 基本定义 每个Port包含多 ...
- 【大厂面试02期】Redis过期key是怎么样清理的?
PS:本文已收录到1.1K Star数开源学习指南--<大厂面试指北>,如果想要了解更多大厂面试相关的内容,了解更多可以看 http://notfound9.github.io/inter ...
- Java 第十一届 蓝桥杯 省模拟赛 小明植树(DFS)
小明植树 题目 问题描述 小明和朋友们一起去郊外植树,他们带了一些在自己实验室精心研究出的小树苗. 小明和朋友们一共有 n 个人,他们经过精心挑选,在一块空地上每个人挑选了一个适合植树的位置,总共 n ...
- (Java实现) 自然数的拆分
题目描述 任何一个大于1的自然数n,总可以拆分成若干个小于n的自然数之和.拆分成的数字相同但顺序不同被看做是相同的方案,如果1+3与3+1被看做是同一种方案. 输入 输入待拆分的自然数n. 输出 如样 ...
- Java实现第十届蓝桥杯等差数列
试题 I: 等差数列 时间限制: 1.0s 内存限制: 512.0MB 本题总分:25 分 [问题描述] 数学老师给小明出了一道等差数列求和的题目.但是粗心的小明忘记了一 部分的数列,只记得其中 N ...
- Spring AOP概念及作用
一:SpringAOP概念 面向切面编程(Aspect Oriented Programming)提高了另一种角度来思考程序的结构,通过预编译方式和运行期间的动态代理实现程序功能的统一维护的一种技术. ...
- 如何安装vue脚手架?
前提(已经安装好node,可以正常使用npm) 一.cmd输入 npm install vue-cli -g ---- 全局安装vue-cli工具 安装好过后,再输入指令 vue --version ...
- 聊一聊高并发高可用那些事 - Kafka篇
目录 为什么需要消息队列 1.异步 :一个下单流程,你需要扣积分,扣优惠卷,发短信等,有些耗时又不需要立即处理的事,可以丢到队列里异步处理. 2.削峰 :按平常的流量,服务器刚好可以正常负载.偶尔推出 ...
- (一)c++之细解 const 与 static
const成员变量与const成员函数与const对象 static成员变量与static成员函数与static全局变量 const成员变量 1. const用于类中成员变量时,将类成员变为只读属性( ...
- js原型链、继承、this指向等老生常谈却依然不熟的知识点——记录解析
开始记录学习过程—— 很详细的解析过程——https://juejin.im/post/5c72a1766fb9a049ea3993e6 借鉴阅读——https://github.com/KieSun ...