学习python D1
- shell脚本最擅长移动文件和替换文本,并不适合GUI界面或者游戏开发,Python是一种解释型语言,在程序开发阶段可以为你节省大量时间
- Python2的用户输入需要用raw_input()而非input()
- python这种变量本身类型不固定的语言称之为动态语言,与之对应的是静态语言。静态语言在定义变量时必须指定变量类型,如果赋值的时候类型不匹配,就会报错。例如Java是静态语言.
- 在Python中,有两种除法,一种除法是/,/除法计算结果是浮点数,即使是两个整数恰好整除,结果也是浮点数;还有一种除法是//,称为地板除,两个整数的除法仍然是整数,因为//除法只取结果的整数部分,所以Python还提供一个余数运算,可以得到两个整数相除的余数,无论整数做//除法还是取余数,结果永远是整数,所以,整数运算结果永远是精确的.
- 有序列表list[可以更改]和tuple(不可更改,可读),tuple定义只有一个元素的列表:tuple(1,),如果是tuple(1)代表是1这个数!这是因为括号()既可以表示tuple,又可以表示数学公式中的小括号
- 循环分为两种:for..in 和while
Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。dict{ },把数据放入dict的方法,除了初始化时指定外,还可以通过key放入
>>> d['Adam'] = 67
>>> d['Adam']
67
当key值不存在时dict还会报错。dict内部存放的顺序和key放入的顺序是没有关系的,而且dict的key必须是不可变对象(这个通过key值计算位置的算法是哈希算法)
key是‘ma’,'dir','ws'
d={'ma':99,'dir':88,'ws':5}
d['ff']=8
print(d)
结果为
{'ws': 5, 'ma': 99, 'ff': 8, 'dir': 88}
7.set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key,set可以看成数学意义上的无序和无重复元素的集合。对于不变对象(如set)来说,调用对象自身的任意方法,也不会改变该对象自身的内容。相反,这些方法会创建新的对象并返回,这样,就保证了不可变对象本身永远是不可变的。
8.函数中有未知部分
def person(name,age,**kw):
if 'city' in kw:
pass
if 'job' in kw:
pass
print('name:', name, 'age:', age, 'other:', kw)
person('Jack', 24, city='Beijing', addr='Chaoyang')
结果为
('name:', 'Jack', 'age:', 24, 'other:', {'city': 'Beijing', 'addr': 'Chaoyang'})
9.疑问:
(1)意义是什么
def person(name, age, *, city, job):
print(name, age, city, job)
(2)不理解
如果函数定义中已经有了一个可变参数,后面跟着的命名关键字参数就不再需要一个特殊分隔符*
了:
def person(name, age, *args, city, job):
print(name, age, args, city, job)
person('Jack',8, city='Beijing', job='Engineer')
详见*arg和**kwargs区别
https://blog.csdn.net/doubleicefire/article/details/80058168 这里提到了*args是保存用不上的数据。
https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001431752945034eb82ac80a3e64b9bb4929b16eeed1eb9000 这是廖雪峰老师的*args的用法
(3)不懂
def person(name,age, **kw):
if 'city' in kw:
# pass
print('pass')
if 'job' in kw:
pass
print('name:', name, 'age:', age, 'other:', kw)
person('hu',8,jobb='fr')
name: hu age: 8 other: {'jobb': 'fr'}
pass是占位符
学习python D1的更多相关文章
- 学习python
最近感觉Python 很不错的样子,乘着这次寒假,不如就先学一下吧. 翻看了一些教程,发现<python 简明教程>质量上乘. 我目前学习python就是打算做一些上位机之类的,好像有点杀 ...
- Python学习--Python基础语法
第一个Python程序 交互式编程 交互式编程不需要创建脚本文件,是通过 Python 解释器的交互模式进来编写代码. linux上你只需要在命令行中输入 Python 命令即可启动交互式编程,提示窗 ...
- Linux运维人员如何学习python编程
Linux运维人员如何学习python编程 从不会写代码,到自己独立能写代码解决问题 .这个问题很重要!盲目学习所谓的项目,最后 还是不会自己写代码解决问题.首先解决了独立能写代码解决问题,再通过项目 ...
- 新手学习Python时常见的错误
最近学习Python,现在把一些常见的错误总结如下: 1)忘记在 if , elif , else , for , while , class ,def 声明末尾添加 :(导致 "Synta ...
- 学习Python的三种境界
前言 王国维在<人间词话>中将读书分为了三种境界:"古今之成大事业.大学问者,必经过三种之境界:'昨夜西风凋碧树,独上高楼,望尽天涯路'.此第一境也.'衣带渐宽终不悔,为伊消得人 ...
- 1 python学习——python环境配置
1 python学习--python环境配置 要学习python语言,光看书看教程还是不好,得动手去写.当然,不管学习什么编程语言,最佳的方式还在于实践. 要实践,先得有一个Python解释器来解释执 ...
- 如何学习Python
[整理]如何学习Python + 如何有效利用Python有关的网络资源 + 如何利用Python自带手册(Python Manual) http://www.crifan.com/howto_lea ...
- 学习Python的第一课(简单的单元测试)
由于有C#开发基础,感觉学习Python应该不难,主要是一些语法了,再加上现在互联网这么发达. 感觉还是要有思路,否则学什么也只能是什么. 话不多说,简单发下这几天的学习成果吧: 第一次写博客,大家不 ...
- 创业日记-关于学习Python
2015年7月2日 深圳 阴天 学习Python有一个月了,总整感觉Python是一个比较小而灵活的语言. 为什么要学习Python 今年我已入行有9年了,一直在写C#,关于微软的集成环境也用的比较顺 ...
随机推荐
- 解析docker中的环境变量使用和常见问题解决
docker容器中的环境变量 docker可以为容器配置环境变量.配置的途径有两种: 在制作镜像时,通过ENV命令为镜像增加环境变量.在容器启动时使用该环境变量. 在容器启动时候,通过参数配置环境变量 ...
- SQL表的自身关联
SQL表的自身关联 有如下两个数据表: tprt表,组合基本信息表,每个组合有对应的投管人和托管人: tmanager表,管理人信息表,管理人类别由o_type区分: 具体表信息如下所示: tprt表 ...
- Python线程模块threading
线程,程序执行的最小单元,单线程处理多个任务只能一个处理完后继续处理下一个直到全部处理完,多线程处理任务会比单线程处理起来快吗?在python程序里得看情况,首先有GIL锁的存在导致同一时刻只能有一个 ...
- ng/cli uses yarn as the package manager
Switch to working directory Excuting the following command ng config cli.packageManager yarn
- Linear Regression with machine learning methods
Ha, it's English time, let's spend a few minutes to learn a simple machine learning example in a sim ...
- leetcode算法题01
最近求职需要重新刷算法题,从今天开始每天至少做一个leatcode的题 如果有更好的算法或者换了语言也会更新 题目: 给定一个整数数组和一个目标值,找出数组中和为目标值的两个数. 你可以假设每个输入只 ...
- ArcGIS Pro开发Web3D应用(2)——地图分屏对比(多屏对比)思路
很多应用中都需要用到地图联动.多屏对比.二三维分屏.大屏显示,有图形可视化的地方就有事件响应触发:鼠标按下.移动.鼠标滚轮,由此触发了地图上坐标或范围的变化,将这些变化发送给另一个地图并响应这些变化, ...
- java程序可以跨平台运行的原因
java有虚拟机(JVM),JAVA程序不是直接在电脑上运行的,是在虚拟机上进行的,每个系统平台都是有自己的虚拟机(JVM),所以JAVA语言能跨平台. 1, java代码不是直接运行在CPU上,而是 ...
- yum安装的mysql5.7默认密码
在linux下通过rpm包安装完成MySQL-community-server 5.7后, 需要以root权限的用户检查/var/log/mysqld.log文件查看自动生成的临时密码. 先查看: 1 ...
- 摩羯座Capricornus
Capricornus 摩羯座的人通常会如何拒绝别人. 摩羯座的人做事脚踏实地,比较固执,忍耐力也是出奇的强大,同时也非常勤奋.他们心中总是背负着很多的责任感,但往往又很没有安全感,不会完全地相信别 ...