当前位置: 首页 > 编程日记 > 正文

day 2 基本类型和函数

列表,元组,字典的转换。
list列表是一组可变的元素集合
列表是'[]'括号组成的,[]括号包含所有元素,列表的创建可以传递字符串,也可以传递多个字符串来创建列表。如"asd", / "a","b" ...
tuple元组的创建和列表一致,区别在于 元组是以'()'创建的,并且元组数据不可变。
dict字典不同于列表和元组,他是一种键值对关系,即key-value,key是唯一的。
字典的作用就是储存一些需要关键字来索引数据的数据结构。
bytes类型转换
如果我们创建一个字符串,并且想把它转换成字节,那么需要用到bytes类型,如:
s = "asd"
bytes(s,encoding="utf-8") 需要指定字符串的自身的编码。否则会出错
dict的formkeys函数可以将列表创建字典的同时,在参数2设置一个共同的值。共享同一块内存,但如果分别赋值不同的值。则改变为分别指向不同的内存。
set -- 集合
set 集合是类似列表,但是不同的是set内不存在重复元素,这是set的天性就是去重。集合内的数据都是唯一的。 set的元素没有固定的顺序,随时变化。
set的函数
s.clear()  清除set元素
s.remove(x) 移除集合内的一个值,如果不存在报错。
s.add(x) 增加一个值
s.pop() 将集合内的自后一个pop并返回。
s.intersection(x) j交集 ,求s和x的交集,就是参数1 有的,同时参数2也有的。a & b
s.issubset(x) 判断x是不是s的子集,就是判断x的元素是否全部都在s中存在,并且s的元素比x多。
s.issuperset(x) 判断s是不是x的父序列
s.symmetric_difference(x) 交叉集- 把s存在的,x不存在的,x存在的。s不存在的一并返回
set.difference(形参1)  差集。求集合和参数1的差集,就是集合有的,参数没有的。,函数会返回差集的数据 = a - b
s.differents_update(x)  求差集的同时将差集数据更新到s
s.union(x) 并集。 == s | b
三目运算-》三元
res = value1 if 条件 else value2 ,如果为真res= value1,否则res = value2
深浅拷贝
对于str,int 的拷贝赋值,地址都是一样的。
对于浅拷贝,仅仅拷贝最外面一层。(不包括数据层,数据层是不拷贝的。因为内存优化机制问题,只要指向的数值一致。那么内存地址都是指向同一个地址)
对于深拷贝,也是不涉及数据层的。深拷贝只是将数据层以外的所有层都拷贝一份。
函数
函数是提高代码复用性的一个数据结构,因为在面向过程里代码往往是复制黏贴,很多代码都是重合的。
所以函数应用而生,为代码的重复利用而设计。
函数就是把实现特定功能的代码写到一个数据结构内,这个数据结构称为函数。
当需要时只需调用即可。
函数已可以传递参数进去,参数有多样:
1 位置参数,位置参数默认在前面。因为 其他参数都有其他功能。
2 默认参数,可以设置一些默认不需要赋值的参数。
3 可变参数,可变参数是用于接收数目不定的参数,因为有时候可以需要接收不确定数量的参数所以可变参数就派上用场了。 *argv
4 关键字参数,关键字参数类似于可变参数,也是可以接收数量不定的参数,不过却别在于关键字参数只接收key=value 这样的形式参数,不是这样形式的参数都是可变参数接收。
对于将一个list对象当做形参传递给函数时,参数传递时 可以直接传递变量,也可以变量前 带一个*号,
对于直接传递 ,函数内部*argv 是一个包含一个list对象的tuple
对于带*号传递,函数内部*argv是一个包含n个元素的tuple
全局变量 & 局部变量
1     全局变量可以在全局范围内使用,但是在局部内不可更改,除非使用golbal关键字声明全局变量。但是这样是不推荐的做法,行业内严禁。
2     局部变量是在函数内定义的或者循环结构内定义的变量,只要循环或函数结束就会删除局部变量。
全局变量推荐大写。
参数一共有几类:
1 普通参数 -> func("a"/variable)
2 指定参数 -> func(p="xxx")
3 默认参数 一般放到最后, def fnc(a,b,c,d=4,e=5)
4 可变参数/动态参数 可以接收数量不定的变量集合, def func(*args) func(1,2,3,4,5)
5 动态关键字参数,可以接收指定参数的形式参数,但是又没有相对应的形参。

转载于:https://www.cnblogs.com/zxcv-/p/6816690.html

相关文章:

手机号码输入历史记录匹配

微信小程序开发交流qq群 173683895 承接微信小程序开发。扫码加微信。 正文&#xff1a; 效果图 html <view class"top_phone"><input placeholder"请输入手机号" typenumber bindinputtop_phone_input bindfocustop_phone_focus value{{ph…

Ubuntu安装Flash视频插件

http://www.linuxidc.com/Linux/2014-05/101095.htm转载于:https://www.cnblogs.com/acbingo/p/4501987.html

如何使用Web Audio API听到“ Yanny”和“ Laurel”的声音

by _haochuan通过_haochuan 如何使用Web Audio API听到“ Yanny”和“ Laurel”的声音 (How you can hear both “Yanny” and “Laurel” using the Web Audio API) Recently an audio clip asking listeners whether they hear the word “Yanny” or “Laurel” has been c…

SCARA——OpenGL入门学习一、二

参考博客&#xff1a;http://www.cppblog.com/doing5552/archive/2009/01/08/71532.html 简介 最近开始一个机械手臂的安装调试&#xff0c;平面关节型机器人又称SCARA(Selective Compliance Assembly Robot Arm)型机器人,是一种应用于装配作业的机器人手臂。然后找资料学习一下…

[.NET] 《Effective C#》快速笔记 - C# 中的动态编程

《Effective C#》快速笔记 - C# 中的动态编程 静态类型和动态类型各有所长&#xff0c;静态类型能够让编译器帮你找出更多的错误&#xff0c;因为编译器能够在编译时进行大部分的检查工作。C# 是一种静态类型的语言&#xff0c;不过它加入了动态类型的语言特性&#xff0c;可以…

阿里云https证书apache配置

微信小程序开发交流qq群 173683895 承接微信小程序开发。扫码加微信。 正文&#xff1a; 一&#xff1a;下载证书&#xff1b; 二&#xff1a;安装证书 文件说明&#xff1a; 1. 证书文件1534884149377.pem&#xff0c;包含两段内容&#xff0c;请不要删除任何一段内容。…

vue css 应用变量_如何使用CSS Grid和CSS变量快速为应用创建原型

vue css 应用变量CSS Grid and CSS Variables are both huge wins for front-end developers. The former makes it dead simple to create website layouts, while the latter brings the power of variables to your stylesheets.CSS Grid和CSS变量对于前端开发人员都是巨大的…

linux--memcache的安装和使用(转)

memcache是高性能&#xff0c;分布式的内存对象缓存系统&#xff0c;用于在动态应用中减少数据库负载&#xff0c;提升访问速度。据说官方所说&#xff0c;其用户包括twitter、digg、flickr等&#xff0c;都是些互联网大腕呀。目前用memcache解决互联网上的大用户读取是非常流行…

EF 调试跟踪生成的SQL语句

IQueryable query from x in appEntitieswhere x.id 10select x;var sql ((System.Data.Objects.ObjectQuery)query).ToTraceString(); 或者 EF6 &#xff1a; var sql ((System.Data.Entity.Core.Objects.ObjectQuery)query).ToTraceString(); 转载于:https://www.cnblogs…

微信小程序图片自适应宽高比例显示解决方法

微信小程序开发交流qq群 173683895 承接微信小程序开发。扫码加微信。 正文&#xff1a; 解决方案一&#xff1a;写固定宽度&#xff0c;然后使用 image 组件中 mode 属性的 widthFix &#xff1b; 先看效果图&#xff1a; 实现代码&#xff1a; <image classmy_img mo…

初创公司面试要问什么_聘请初创公司的产品设计师时要问的问题

初创公司面试要问什么by Bohdan Kit通过Bohdan Kit 聘请初创公司的产品设计师时要问的问题 (Questions to ask when hiring a product designer for a startup) 在人群中寻找隐藏宝石的方法指南 (A how-to guide on finding hidden gems in the crowd) Finding the right pers…

Select Top在不同数据库中的使用

1. oracle数据库 SELECT * FROM TABLE1 WHERE ROWNUM<N 2. Infomix数据库 SELECT FIRST N * FROM TABLE1 3. DB2数据库 SELECT * ROW_NUMBER() OVER(ORDER BY COL1 DESC) AS ROWNUM WHERE ROWNUM<N 或者 SELECT COLUMN FROM TABLE FETCH FIRST N ROWS ONLY 4. SQL Server…

bat+sqlcmd 批量执行脚本

Hello,此BAT脚本能够帮助开发者将某目录下全部SQL脚本按文件名称依次在指定数据库中批量执行。不用忍受powershell invoke-sqlcmd 的笨重。在指执行时多一种选择。 bat文件 echo off REM ******** ******** General Batch for Starting SQL ******** ******** REM %1 is the n…

突破微信小程序五层层级限制的解决方案

微信小程序开发交流qq群 173683895 承接微信小程序开发。扫码加微信。 正文&#xff1a; 五层的限制只是针对 navigateTo&#xff0c;redirectTo 不受此限制。 navigateTo &#xff1a;保留当前页面&#xff0c;跳转到应用内的某个页面&#xff0c;使用wx.navigateBack可以…

react-dnd-dom_我如何使用react-dnd和react-flip-move构建React游戏

react-dnd-domby Nicholas Vincent-Hill尼古拉斯文森特希尔(Nicholas Vincent-Hill) 我如何使用react-dnd和react-flip-move构建React游戏 (How I built a React game with react-dnd and react-flip-move) This is a high level overview of my implementation of a puzzle/w…

web应用程序和web网站_Web应用程序和移动应用程序的基本启动清单

web应用程序和web网站by Ben Cheng通过本诚 Web应用程序和移动应用程序的基本启动清单 (The Essential Launch Checklist for Web Apps and Mobile Apps) This is a simple launch checklist for web and mobile apps that I’ve prepared for product and project managers t…

javascript禁止修改对象

禁止扩展 Object.preventExtensions(obj);var me {name: "xiaowtz" }; console.log(Object.isExtensible(me)); //true,对象默认都是可扩展的Object.preventExtensions(me); //禁止对象扩展后&#xff0c;不可以给对象添加新的属性console.log(Object.isExtensible(…

webpack入门之简单例子跑起来

webpack入门之简单例子跑起来 webpack介绍 Webpack是当下最热门的前端资源模块化管理和打包工具&#xff0c;它可以将很多松散的模块按照依赖和规则打包成符合生产环境部署的前端资源&#xff0c;还可以将按需加载的模块进行代码分割&#xff0c;等到实际需要的时候再异步加载。…

微信小程序 scroll-view 根据内容的高度自适应

微信小程序开发交流qq群 173683895 承接微信小程序开发。扫码加微信。 正文&#xff1a; 1 <video autoplay src"{{videoPlayUrl}}" controls></video> <scroll-view scroll-y style"height: {{height?heightpx:auto}}"><view c…

org.hibernate.hibernate.connection.release_mode

org.hibernate.connection包的主要封装了通过JDBC来连接数据库的操作&#xff0c;用户可以以数据源的方式&#xff0c;或者通过特定数据库驱动的方式&#xff0c;甚至是自己定义连接类的方式来完成数据库的连接操作&#xff0c;包下面的代码文件并不多&#xff0c;只有5个&…

添加百度地图最简单的办法

http://map.baidu.com/?newmap1&ieutf-8&ss%26wd%3D%E4%B8%8A%E6%B5%B7%E9%9D%92%E6%B5%A6%E5%8C%BA%E5%BE%90%E9%BE%99%E8%B7%AF77%E5%8F%B7后面加上地址就好了 比方说&#xff1a;http://map.baidu.com/?newmap1&ieutf-8&ss%26wd%3D%E4%B8%8A%E6%B5%B7%E9%…

微信小程序的数字有部分会自动加粗的解决方法

微信小程序开发交流qq群 173683895 承接微信小程序开发。扫码加微信。 正文&#xff1a; bug图&#xff1a; 能看到&#xff0c;0和1是一个标签里面的&#xff0c;但是不统一显示 此时的代码&#xff1a; <view>2018-08-01</view> 修改后的代码&#xff1a;…

ux设计_从UX设计人员的角度来看Microsoft Build 2018

ux设计by Samuele Dassatti通过萨穆尔达萨蒂 从UX设计人员的角度来看Microsoft Build 2018 (Microsoft Build 2018 from the perspective of a UX designer) I recently attended Microsoft Build 2018 in Seattle, because one of my apps was nominated for Design Innovato…

DFS template and summary

最近一直在学习Deep Frist Search&#xff0c;也在leetcode上练习了不少题目。从最开始的懵懂&#xff0c;到现在遇到问题基本有了思路。依然清晰的记得今年2月份刚开始刷题的时做subsets的那个吃力劲&#xff0c;脑子就是转不过来到底该如何的递归&#xff0c;甚至试过使用deb…

linux gcc安装

2004年4月20日最新版本的GCC编译器3.4.0发布了。目前&#xff0c;GCC可以用来编译C/C、FORTRAN、java、OBJC、ADA等语言的程序&#xff0c;可根据需要选择安装支持的语言。GCC 3.4.0比以前版本更好地支持了C标准。本文以在Redhatlinux上安装GCC3.4.0为例&#xff0c;介绍了GCC的…

js中 let var const 的差异和使用场景

微信小程序开发交流qq群 173683895 承接微信小程序开发。扫码加微信。 正文&#xff1a; 建议使用的优先级&#xff1a;const > let > var ES6 提出了两个新的声明变量的命令&#xff1a;let和const。其中&#xff0c;let完全可以取代var&#xff0c;因为两…

bulma.css_如何建立一个? 具有Bulma CSS的特斯拉响应页面

bulma.cssby ZAYDEK由ZAYDEK 0-60 in 1.9s&#xff1f; (0-60 in 1.9s ?) 如何建立一个&#xff1f; 具有Bulma CSS的特斯拉响应页面 (How To Build A ? Responsive Tesla Launch Page With Bulma CSS) 加速可持续网页设计的到来 (To accelerate the advent of sustainable …

hdu 5099 Comparison of Android versions 枚举题意

题目链接&#xff1a;http://acm.hdu.edu.cn/showproblem.php?pid5099 卡读题&#xff0c;实际上题目中表述的题意并不完整&#xff0c;所以要认真读并且加上一些现实的“常识” 关于枚举题意&#xff0c;感觉应该三个人分别看&#xff0c;然后讨论出最有可能的题意是什么 为了…

去除按钮的样式

微信小程序开发交流qq群 173683895 承接微信小程序开发。扫码加微信。 正文&#xff1a; 去除按钮默认点击效果&#xff1a; 在button标签里面添加属性&#xff1a; hover-class"none"&#xff1b; 为了方便大家&#xff0c;下面列出微信请求服务器常用的几种方…

移动应用程序和网页应用程序_您的移动应用程序运行缓慢的主要原因以及如何修复它...

移动应用程序和网页应用程序by Rajput Mehul通过拉杰普特梅胡尔(Rajput Mehul) 您的移动应用程序运行缓慢的主要原因以及如何修复它 (Top Reasons Why Your Mobile App is Slow and How to Fix it) At a time when technology is moving ahead at an express pace and people …