noteswiki

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

1.变量的命名和使用

Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。
1)变量名只能包含字母,数字和下划线;可以字母或下划线开头,但不能以数字开头。
2)变量名不能包括空格,可使用下划线来分隔字母
3)不能使用Python关键字作为变量名
4)不要使用小写字母l和大写字母O,以免被误认为数字1和数字0
5)对大小写敏感
6)Python保留字即关键字,我们不能把它们用作任何标识符名称
   Python 的标准库提供了一个 keyword 模块,可以输出当前版本的所有关键字
    import keyword
    keyword.kwlist
在 Python 3 中,可以用中文作为变量名,非 ASCII 标识符也是允许的了

给单个变量赋值

int_x= 100          # 整型变量
weight= 100.0       # 浮点型变量
city= "shanghai"     # 字符串

给多个变量赋值

x = y = z = 1
a, b, c = 1, 2, "hello world"
 2.python的注释

   2.1当行注释, 当行注释用以 # 开头
  2.3多行注释,可以使用多个#,或者用 ''' 和 """将需要注释的内容引起来

3.python代码块 python代码块使用缩进来表示,同一个代码块的语句必须包含相同的缩进空格数,

本属于同一代码块的,如果语句缩进数的空格数不一致,可能会导致运行错误,或者该代码块不全,或者和将其他代码块也包括进来

4.python代码多行的书写

Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠 \ 来实现多行语句

5.python输出

print 默认输出是换行的,如果要实现不换行需要在变量末尾加上 end=""

import 与 from...import的区别

在 python 用 import 或者 from...import 来导入相应的模块。
将整个模块(somemodule)导入,格式为: import   module_name
从某个模块中导入某个函数,格式为: from  module_name  import somefunction
从某个模块中导入多个函数,格式为: from  module_name  import firstfunc, secondfunc, thirdfunc
将某个模块中的全部函数导入,格式为: from  module_name  import *

 

6.Python数据类型
不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组)
可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)
6.1 Number 数字类型(bool, int, long, float, complet)

  None,0,空字符串,以及没有元素的容器对象都可视为False,繁殖为True

 内置的 type() 函数可以用来查询变量所指的对象类型。

 数值的除法包含两个运算符:/ 返回一个浮点数,// 返回一个整数

 

6.2 String 字符串

Python中的字符串用单引号 ' 或双引号 " 括起来,同时使用反斜杠 \ 转义特殊字符

Python 没有单独的字符类型,一个字符就是长度为1的字符串。

1)可以使用单引号或双引号
2)字符串操作函数
    title(): 首字母大写(str.title())
    upper():转换为大写字母
    lower():转换为小写字母
     字符串合并(拼接): 使用加号(+)
3)制表符(\t),回车换行符(\n)
4)删除多余的空白字符
   删除末尾字符: rsrip()
   删除开头字符:lstrip()
   删除两端字符:strip()

5)反斜杠(\)可以作为续行符,表示下一行是上一行的延续。也可以使用 """...""" 或者 '''...''' 跨越多行

6)字符串的读取和操作

 

  

6.3 List 列表

List是python中的基本数据结构之一,支持动态的元素的增加。

list支持不同类型的数据项在一个列表中,比如数字,字符串甚至可以包含列表(嵌套)

创建一个列表,只要把逗号分割的不同的数据项使用方括号括起来即可

list1[0] ; #取第一个元素
list1[-1]         # 取最后一个元素
list1[ : ] 或者 list1[ : len(list1)] # 取所有列表元素
list1[0 : n]       # 从第0号取到n-1号元素

 

 列表的更新

list1=[1,3.14,'cat',"shanghai", "chongqing", 2012]
list1[0]=200                   #修改元素
print(list1)
list1.insert(1,"inserted")     #添加元素
print(list1)
list1.append(6.38)             #追加元素
print(list1)
del list1[0]                   #删除元素
print(list1)

List操作函数

len(list)   #list的长度
list.append(var)  #追加元素
list.insert(index,var)
list.pop(var)   #返回最后一个元素,并从list中删除之
list.remove(var)  #删除第一次出现的该元素
list.count(var)  #该元素在列表中出现的个数
list.index(var)  #该元素的位置,无则抛异常 
list.extend(list) #追加list,即合并list到L上
list.sort()    #排序
list.reverse()   #倒序

list遍历

for x in list1:
 print(x)

 

6.4 Tuple 元组

元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开。

tuple1 = ( 'abcd',  2.23, 'shanghai', 5 )
tuple2 = (123, 'hello')

print (tuple1)             # 输出完整元组
print (tuple1[0])          # 输出元组的第一个元素
print (tuple1[1:3])        # 输出从第二个元素开始到第三个元素
print (tuple1[2:])         # 输出从第三个元素开始的所有元素
print (tuple2 * 2)     # 输出两次元组
print (tuple1 + tuple2) # 连接元组

构造包含 0 个或 1 个元素的元组比较特殊,有一些额外的语法规则

tuple1 = ()    # 空元组
tuple2 = (20,) # 一个元素,需要在元素后添加逗号

string、list 和 tuple 都属于 sequence(序列)。

注意:

  • 1、与字符串一样,元组的元素不能修改。
  • 2、元组也可以被索引和切片,方法一样。
  • 3、注意构造包含 0 或 1 个元素的元组的特殊语法规则。
  • 4、元组也可以使用+操作符进行拼接

切片操作
适用于列表和元组。
切片是用来获取列表元组,字符串等有序序列中部分元素的一种语法。在形式上切片使用两个冒号分隔的三个数字来完成。
[start:end:step]其中start默认为零。
Step默认为一。刚step为负整数时,表示反向切片。此时start应该在end的右侧。
end表示不包括end。
当只有一个冒号时返回所有元素的副本。

tuple1=(123,"a","b",3.1415, 'hello', 45, "shanghai")
print(tuple1[2:])         #tuple1[2:]下标2之后的所有元素,这里面不包括下标三这个元素
print(tuple1[-3:])        #tuple1[-3:]最后3 个元素
print(tuple1[:-2])        #tuple1[:-2] 除最后2个元素以外的所有元素
print(tuple1[::2])        #tuple1[::2]每2个元素选一个

  

6.5 Set 集合

定义:由不同元素组成的集合,集合是一组无序排列
集合不同于列表或元组,集合中的每一个元素不能出现多次,并且是无序存储的
特点: 1、不同元素组成   2、无序  3、集合中的元素必须是不可变类型

 集合的使用

1.集合的定义,打印自动去重

set1 = {1,2,'apple', 'orange', 'apple',3,1,}
print(set1)

 

2.集合的操作(添加,删除)

set1 = {2,1,'apple', 'orange', 'apple',3,1,}
set1.add(5)                      #添加元素 
print(set1)
set1.pop()                       #随机移除元素
print(set1)
set1.remove(3)                   #移除指定元素, 如果指定元素不存在,则会报错
print(set1)
set1.discard(7)                 #移除指定元素, 如果指定元素不存在,不会报错
print(set1)
set1.clear()                    #清除所有元素
print(set1)

  

3.集合的运算(交集,并集,差集,交叉补集)

set1={1,2,'a'}
set2={1,'a',"b",'c'}
print(set1.intersection(set2))                    #取交集
print(set1.union(set2))                           #取并集
print(set1.difference(set2))                      #取差集,发起差集的集合,会把自己有,而对方没有的元素得到
print(set2.difference(set1))                      #取差集,发起差集的集合,会把自己有,而对方没有的元素得到
print(set1.symmetric_difference(set2))            #交叉补集,交叉补集会去掉共有的部分,只保留双方独有的部分

  

6.6 Dictionary 字典
 字典是另一种可变容器模型,且可存储任意类型对象,如字符串、数字、元组等其他容器模型。
  字典由键(key)和对应值(value)成对组成。字典也被称作关联数组或哈希表。

每个键与值用冒号隔开(:),每对用逗号,每对用逗号分割,整体放在花括号中({})。
键必须独一无二,但值则不必。
值可以取任何数据类型,但必须是不可变的,如字符串,数组或元组。

dict1 = { 'abc': 123 }
dict2 = { 'abc': 456, 21: 16.8}

 

 

 

 字典添加元素和删除元素

x={1:2}
y={'a':'b'}
z={1:201}
x['city'] = 'shanghai'  #直接添加,给定键值对;key 存在即修改,key不存在即新增
print(x)
x.update(z)             #使用update添加,给定键值对 
print(x)
x['city'] = '北京'      #直接添加,给定键值对; d['key'] = value  key存在即修改,key不存在即新增
print(x)
x.update(y)
print(x)
del[x['a']]             #删除元素 
print(x)
xx = x.pop(1)           #删除指定元素
print(x)

 

 

 

访问字典中的值

d={'key':'find_value', 'a':123}
print(d['key'])                        #如果写了不存在的值会报错
print(d.get('key'))                    #如果写了不存在的值,返回None
print(d.get('key1','not find '))        #如果找不到存在的值,返回 “not find”

 

 

遍历字典元素

d={'city':'shanghai', 'a':123}
if  'city' in d:                #判断key是否存在
    print('city')
print('*************')
for k,v in d.items():          #遍历字典
    print(k,v)                  #无须转换成list 格式,保留了字典原有的特性
print('*************')
for k in d:                
    print(k,d[k])
    print(k,d.get(k))         #取值速度快,性能好

 

posted on 2021-11-09 15:23  noteswiki  阅读(63)  评论(0编辑  收藏  举报