美文网首页ITS·黑客
【python】基础

【python】基础

作者: 某米狼 | 来源:发表于2017-03-31 13:41 被阅读33次

基础

>>>print('you', 'bad', 'bad','你坏坏')
you bad bad 你坏坏

print()会依次打印每个字符串,遇到逗号“,”会输出一个空格。

大小写敏感

# 开头是注释

当语句以冒号:结尾时,缩进的语句视为代码块。

Python使用缩进来组织代码块,坚持使用4个空格的缩进。
在文本编辑器中,需要设置把Tab自动转换为4个空格,确保不混用Tab和空格。在sublime设置里 大括号内添加以下代码

    "tab_size": 4,
    "translate_tabs_to_spaces": true,
    "expand_tabs_on_save": true,
  • 十六进制 0xff00,0xa5b4c3d2
    1.23x109 就是1.23e9

  • 转义字符
    Python还允许用r'' 表示 ''内部的字符串默认不转义print('\\\t\\')

  • Python允许用格式表示多行内容
    命令行里:

>>> print('''line1
... line2
... line3''')
line1
line2
line3

程序里

print('''line1
line2
line3''')
  • /除法计算结果是浮点数,即使是两个整数恰好整除,结果也是浮点数
  • ord()函数获取字符的整数表示
    chr()函数把编码转换为对应的字符
  • 如果知道字符的整数编码,还可以用十六进制这么写str:
>>> '\u4e2d\u6587'
'中文'

3.6可以显示,2.7显示不出来

  • 让代码按UTF-8编码读取
    1. 在文件开头写上这两行:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
  1. 确使用UTF-8 without BOM编码储存文本
  • 格式化
>>> 'Hello, %s' % 'world'
'Hello, world'
>>> 'Hi, %s, you have $%d.' % ('Michael', 1000000)
'Hi, Michael, you have $1000000.
>>> '%2d-%02d' % (3, 1)
' 3-01'
>>> '%6.2f' % 3.1415926
'  3.14'

6.2f:6位包含小数点
%d 整数
%f 浮点数
%s 字符串
%x 十六进制整数

  • list [] 和 tuple ()
    classmates[-1] 就是倒数第一个
    .append(i, ) 在索引i插入元素
    .pop(i) 删除索引i
    多维列表:list元素也可以是另一个list
    classmates=(1,2,3)初始化后就不能被改咯
    classmates=(1) 只有单元素会引起歧义,因为()也表示数学小括号。所以,只有1个元素的tuple定义时必须加一个逗号来消除歧义。

  • elif 是else if的缩写,而且还不能用else if
    if x: 只要x是非零数值、非空字符串、非空list等,就是true

  • input()返回的数据类型是str,str不能直接和整数比较,用int()函数可以把字符串数字转化为数字类型

  • 循环
    while循环 和 for x in ...循环 两种, for循环就是把每个元素代入变量x,然后执行缩进块的语句。
    break跳出循环 continue提前结束本次循环,通常搭配if使用。要特别注意 不要滥用这俩,能改写循环条件和逻辑就不要用这俩
    list(range(5))[0, 1, 2, 3, 4]

  • 字典

    • dic
      d = {key1: value1,key2: value2} d[key]返回value
      或者{set}[key] 就可以返回value
      判断key存在与否:
      key in d 返回false
      d.get(key) 返回None的时候Python的交互式命令行不显示东西
      d.get('Thomas', -1) 返回 -1
      请务必注意,dict内部存放的顺序和key放入的顺序是没有关系的。
      dict的key必须是不可变对象,比如list就不能作为key
      和list比较,dict查找和插入的速度快,占内存。
    • set
      也是一组key的集合,但不存储value,key不重复
      s = set([1, 2, 3]) 输入s返回{1, 2, 3}
      添加key .add(key)
      删除key .remove(key)
      两个set可以做数学意义上的交集、并集等操作 s1 & s2``s1|s2

List+Tuple+Dict+Set小结

对比 列表List 元组Tuple 字典Dict 集合Set
创建 L = ['Adam', 'Lisa', 'Bart', 'Gechong', 'Kongming'] Tu = ('Adam', 'Lisa', 'Bart', 'Gechong', 'Kongming') Di = {'Adam':100, 'Lisa':90, 'Bart':93, 'Gechong':100, 'Kongming':100} s = set(['Adam', 'Lisa', 'Bart', 'Gechong', 'Kongming'])
显示 L[0] Tu[0] Di['Adam']和Di.get('Adam') if 'Test' in s: print ('Test') else:print ('No')
遍历 print (L)和for循环 print (Tu)和for循环 print(Di)和for循环 print(Set)和for循环
更新 append()和insert()和直接赋值 不可以更新 对应位置赋值即可 s.add()
删除 pop()和pop(n) 不可以删除 s.remove()
特点 有序,可以添加删除 指向的位置不可变 查找速度快、浪费空间、key不可以重复,且不可变(不能用list作key)、数据无序排放 像是把dict的key抽出来,两个set可以做数学意义上的交集、并集等操作

全面了解python中的类,对象,方法,属性

http://www.jb51.net/article/92405.htm

相关文章

网友评论

    本文标题:【python】基础

    本文链接:https://www.haomeiwen.com/subject/xqomottx.html