前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >学习python D1

学习python D1

作者头像
py3study
发布2020-01-16 17:41:27
4230
发布2020-01-16 17:41:27
举报
文章被收录于专栏:python3python3
  1. shell脚本最擅长移动文件和替换文本,并不适合GUI界面或者游戏开发,Python是一种解释型语言,在程序开发阶段可以为你节省大量时间
  2. Python2的用户输入需要用raw_input()而非input()
  3. python这种变量本身类型不固定的语言称之为动态语言,与之对应的是静态语言。静态语言在定义变量时必须指定变量类型,如果赋值的时候类型不匹配,就会报错。例如Java是静态语言.
  4. 在Python中,有两种除法,一种除法是/,/除法计算结果是浮点数,即使是两个整数恰好整除,结果也是浮点数;还有一种除法是//,称为地板除,两个整数的除法仍然是整数,因为//除法只取结果的整数部分,所以Python还提供一个余数运算,可以得到两个整数相除的余数,无论整数做//除法还是取余数,结果永远是整数,所以,整数运算结果永远是精确的.
  5. 有序列表list[可以更改]和tuple(不可更改,可读),tuple定义只有一个元素的列表:tuple(1,),如果是tuple(1)代表是1这个数!这是因为括号()既可以表示tuple,又可以表示数学公式中的小括号
  6. 循环分为两种:for..in 和while

Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。dict{  },把数据放入dict的方法,除了初始化时指定外,还可以通过key放入

代码语言:javascript
复制
>>> d['Adam'] = 67
>>> d['Adam']
67

当key值不存在时dict还会报错。dict内部存放的顺序和key放入的顺序是没有关系的,而且dict的key必须是不可变对象(这个通过key值计算位置的算法是哈希算法)

 key是‘ma’,'dir','ws'

代码语言:javascript
复制
d={'ma':99,'dir':88,'ws':5}
d['ff']=8
print(d)

结果为

代码语言:javascript
复制
{'ws': 5, 'ma': 99, 'ff': 8, 'dir': 88}

 7.set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key,set可以看成数学意义上的无序和无重复元素的集合。对于不变对象(如set)来说,调用对象自身的任意方法,也不会改变该对象自身的内容。相反,这些方法会创建新的对象并返回,这样,就保证了不可变对象本身永远是不可变的。

8.函数中有未知部分

代码语言:javascript
复制
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')

结果为

代码语言:javascript
复制
('name:', 'Jack', 'age:', 24, 'other:', {'city': 'Beijing', 'addr': 'Chaoyang'})

9.疑问:

(1)意义是什么

代码语言:javascript
复制
def person(name, age, *, city, job):
    print(name, age, city, job)

(2)不理解

如果函数定义中已经有了一个可变参数,后面跟着的命名关键字参数就不再需要一个特殊分隔符*了:

代码语言:javascript
复制
def person(name, age, *args, city, job):
    print(name, age, args, city, job)
代码语言:javascript
复制
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)不懂

代码语言:javascript
复制
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')
代码语言:javascript
复制
name: hu age: 8 other: {'jobb': 'fr'}

 pass是占位符

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-05-29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档