python学习记录(一)-基础
交换变量值
a,b = 10,20
print(a,b) #10 20
a,b = b,a
print(a,b) #20 10
大字符串
str = '''最近在看的动漫:
黑之契约者、咒术回战。。。'''
print(str)
#最近在看的动漫:
#黑之契约者、咒术回战。。。
取消转义字符
str = '取消\t转义字符'
print(str) #取消 转义字符
str = r'取消\n转义字符'
print(str) #取消\t转义字符
元组
vart = (1,2,3)
print(vart,type(vart)) #(1, 2, 3) <class 'tuple'>
vart = (1)
print(vart,type(vart)) #1 <class 'int'>
vart = (1,)
print(vart,type(vart)) #(1,) <class 'tuple'>
vart = 1,2,3
print(vart,type(vart)) #(1, 2, 3) <class 'tuple'>
集合
无序、内容不重复
vars = {3,1,8,2}
print(vars,type(vars)) #{8, 1, 2, 3} <class 'set'>
vars = {}
print(vars,type(vars)) #{} <class 'dict'>
vars =set()
print(vars,type(vars)) #set() <class 'set'>
集合运算
a = {1,2,3,'a','b','c'}
b = {'a','b',4,5,6}
print(a & b) #交集 {'a', 'b'}
print(a - b) #差集 {1, 2, 3, 'c'}
print(a | b) #并集 {1, 2, 3, 4, 5, 6, 'b', 'c', 'a'}
print(a ^ b) #对称差集 {'c', 1, 2, 3, 4, 5, 6}
集合操作
a = {1,2,3}
a.add(4)
print(a) #{1, 2, 3, 4}
a.discard(4)
print(a) #{1, 2, 3}
print(4 in a) #False
算术运算符
#+ - * / % ** //
a,b = 5,2
print(a/b) #2.5
print(a%b) #1
print(a//b) #2
print(b**3) #8
拼接字符串
a = 'hello'
print(f'{a} world') #hello world
print('{} world'.format(a)) #hello world
name,age = "osan",18
print("%s永远%d" % (name,age))
pi = 3.1415926
print("%.3f" % pi)
是否引用同一个对象
a,b = 10,11
print(id(a),id(b)) #140730676310576 140730676310608
print(a is b,a is not b) #False True
参数们
def fun(var1,var2,*vars,keyvars,**kwvars):
print(var1,var2) # 10 20
print(vars,type(vars)) # ('收', '集', '参', '数') <class 'tuple'>
print(keyvars) # 关键字参数
print(kwvars,type(kwvars)) # {'k1': '关键字', 'k2': '收集', 'k3': '参数'} <class 'dict'>
fun(10,20,'收','集','参','数',keyvars='关键字参数',k1='关键字',k2='收集',k3='参数')
访问变量
num = 10
str = '1234'
varlist = [1,2,3,4]
varset = {1,2,3,4}
vardict = {1:11,2:22}
def fun():
print(num) # 10
num = 11 # UnboundLocalError: local variable 'num' referenced before assignment
print(str) # 1234
str = '12345' # UnboundLocalError: local variable 'num' referenced before assignment
varlist[3] = 44
varset.add(5)
vardict[1] = 111
fun()
print(varlist) # [1, 2, 3, 44]
print(varset) # {1, 2, 3, 4, 5}
print(vardict) # {1: 111, 2: 22}
全局变量
num = 10
str = '1234'
def fun():
global num,str,jubu
num = 11
str = '12345'
jubu = '函数内定义的全局变量'
fun()
print(num) # 11
print(str) # 12345
print(jubu) # 函数内定义的全局变量
查看作用域
num = 10
def fun():
global var1
var1 = 1234
var2 = 3456
def inner():
pass
print(globals()) # {'num':10,var1:1234,...}
print(locals()) # {'var2': 3456,'inner':<function fun.<locals>.inner>}
fun()
print(globals()) # {'num':10,var1:1234,...}
print(locals()) # {'num':10,var1:1234,...}
nonlocal
def fun():
var = 1
def inner():
nonlocal var
print(var) # 1
var = 2
print(var) # 2
inner()
fun()
python学习记录(一)-基础的更多相关文章
- python学习记录_IPython基础,Tab自动完成,内省,%run命令_
这是我第一次写博客,之前也有很多想法,想把自己所接触的,以文本的形式储存,总是没有及时行动.此次下定决心,想把自己所学,所遇到的问题做个记录共享给诸位,与此同时自己作为备忘,感谢各位访问我的博 ...
- Python学习笔记之基础篇(-)python介绍与安装
Python学习笔记之基础篇(-)初识python Python的理念:崇尚优美.清晰.简单,是一个优秀并广泛使用的语言. python的历史: 1989年,为了打发圣诞节假期,作者Guido开始写P ...
- Python学习记录day6
title: Python学习记录day6 tags: python author: Chinge Yang date: 2016-12-03 --- Python学习记录day6 @(学习)[pyt ...
- Python学习记录day5
title: Python学习记录day5 tags: python author: Chinge Yang date: 2016-11-26 --- 1.多层装饰器 多层装饰器的原理是,装饰器装饰函 ...
- python学习日记(基础数据类型及其方法01)
数字 int 主要是用于计算的,常用的方法有一种 #既十进制数值用二进制表示时,最少使用的位数i = 3#3的ASCII为:0000 0011,即两位 s = i.bit_length() print ...
- Python学习记录day8
目录 Python学习记录day8 1. 静态方法 2. 类方法 3. 属性方法 4. 类的特殊成员方法 4.1 __doc__表示类的描述信息 4.2 __module__ 和 __class__ ...
- Python学习记录day7
目录 Python学习记录day7 1. 面向过程 VS 面向对象 编程范式 2. 面向对象特性 3. 类的定义.构造函数和公有属性 4. 类的析构函数 5. 类的继承 6. 经典类vs新式类 7. ...
- Python学习记录:括号配对检测问题
Python学习记录:括号配对检测问题 一.问题描述 在练习Python程序题的时候,我遇到了括号配对检测问题. 问题描述:提示用户输入一行字符串,其中可能包括小括号 (),请检查小括号是否配对正确, ...
- 学习记录-java基础部分(一)
学习记录-java基础部分(一) 参考:GitHub上的知名项目:javaGuide : https://github.com/Snailclimb/JavaGuide/blob/master/doc ...
- Python学习day16-模块基础
<!doctype html>day16 - 博客 figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { ...
随机推荐
- COM 对象的利用与挖掘4
作者:Joey@天玄安全实验室 前言 本文在FireEye的研究Hunting COM Objects[1]的基础上,讲述COM对象在IE漏洞.shellcode和Office宏中的利用方式以及如何挖 ...
- protobuf如何还原proto源文件及描述字符串中左括弧的意义
语法分析 和通常的有语法的结构一样,proto的编译也经过词法(tokenize)和语法(parse)两个阶段,相关代码分别在tokenizer.cc和parser.cc两个文件中. /// @fil ...
- 【C++复习】第九章 模板与群体数据(2)
学习重点:容器类型内部的实现机制,顺便复习前面各章内容.容器类型的具体实现不需要特别关注(目前不需要会裸手写这么一个容器类型) 1.群体/线性群体 群体的概念 群体是指由多个数据元素组成的集合体.群体 ...
- ABAP 物料主数据 屏幕增强按钮
首先看效果,目标是在物料主数据中 基础数据页面新增一个按钮来满足跳转需求,这里以跳转百度为例 页面效果如下: 创建定制程序 事务代码 SPRO,路径:后勤-常规 -> 物料主数据 -> 配 ...
- Python3注释
Python中的注释有单行注释和多行注释: python中单行注释以#开头,例如: #这是一个注释 print("hello,word!") 多行注释用三个单引号'''或者三个双引 ...
- python学习笔记-初始python(1)
1.运行程序 python 使用cmd.exe 运行程序. 例子: python +[文件路径] 2.注释 当行注释:# 被注释内容 多行注释:'''被注释内容''',或者""& ...
- 端口被占用 for mac
启用项目提示端口被占用 解决方案: lsof -i : 3010 杀死占用的进程 kill -9 4804 重新启动
- flutter TextField 使用prefixIcon图标和文字间距问题
可以看到使用prefixIcon图标就出现间距问题.网上看了很多文章,好像是没有什么好的解决办法,也有可能是太简单了,别人懒的发(哭笑). 我把我知道的方法写出来吧 decoration: Input ...
- Ubuntu16python3.5升级3.6apt-getupdate遇到403forbidden
查了好多发现都不顶用 其实是因为jonathof的源停止对外开源了 真正解决问题的博客
- Java基础面试笔试大汇总
1面向对象的特征有哪些方面? 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象. 继承:继承就是从已有的类得到继承信息创建新类的过程 封装:封装就是把数据和操作数据的方法绑 ...