Python快速入门

日期:2021.01.25

1. 数据类型

  • 字符串(不可变序列)

表示形式

print('abc')
print("abc")
print('''abc''')

输出都是:abc
字符串常用函数
str.lower()变小写
str.upper()变大写
str.split(sep)使用sep将字符串分割,默认sep为空格
str.replace(old, new)将str中的old替换为new
str.format()向str中填充内容

 

各个函数输出实例:


Input:    words = 'Py thon'
          words.lower()------>Output:   'py thon'

Input:    words.upper()------>Output:   'PY THON'

Input:    words        ------>Output:    'Py thon'

Input:    words.split(' ')--->Output:    ['Py','thon']

Input:    words.replace('Py thon','programe')-->Output:    'programe'

特别的,format()函数,自动化填充

  • 列表List(可变序列)

定义: 一种有序的集合,内部可以由任何数据类型组成

names =['David', 'Mary', 'Henry', 'Swift', 'Lenard']

ages = [25,23,23,21, 26]

hobbies = [ ['Baskatball', 'Pingpang', 'Hiking'],
            [ 'Reading', 'Movies'],
            [ 'Diving', 'Hiking'],
            [ 'Football', 'Music'],
            ['Stay at Home']                   ]
print(type (names))
print(type(ages))
print(type(hobbies))

print (names)
print(ages)
print(hobbies )

<class 'list'>
<class 'list'>
<class 'list'>
[ David', 'Mary', 'Henry', 'Swift', ' Lenard' ]
[25,23, 23, 21,26]
[[' Basketball', 'Pingpang', 'Hiking'], [' Reading','Movies'], ['Diving', 'Hiking'], ['Football', 'Music'], ['Stay at Home']]

拼接:

a1 = [ 'Michael', ' Bob']
a2 = ['David', 'Lee']
    print(a1 + a2)
    print(a2 + a1)

[ 'Michael' , 'Bob' , 'David' , 'Lee']
['David' , 'Lee' ,  'Michael' , 'Bob']

拆包:

等号两边长度相同

name, age = ['David', 25]
print(name)
print(age)

David

25

切片——和split函数一致

Input:  print(names[2])    #正索引
        print(names[-3])   #倒索引 

Henry
Henry

print (names[0:3])
print (names[-5:-2])


[ 'David' , 'Mary' , 'Henry']
[ 'David' , 'Mary' , 'Henry']

List常用方法
list.append(a)向list中添加元素a在尾部添加元素
list.extend(lst)向list中添加列表Ist在尾部添加列表 
list.count(a)统计list中元素a的个数 
  • 元组tuple(不可变序列)

形似列表,有:

  1. 元组拼接
  2. 切片
  3. 拆包

形式:

t = ('python','hello','world')
    for item in t:        #遍历元组
        print(item)

['python' , 'hello' , 'world']

  • 集合

  1. 元素不重复
  2. 集合元素没有顺序,没有索引
  3. 集合不能切片

集合的创建:

names2 = [ 'David', 'Mary', 'David', 'Swift', 'David']
print(set(names2))    #set()是集合函数

{'Swift' , 'Mary' , 'David'}

集合的添加 setdata.add(ele) 向setdata中加入ele.(在头部添加)

  • 字典

  1. 形似hashMap,索引---->数据(key---->value)
  2. 字典可以嵌套字典
  3. 字典可以存储列表、字符串、数字等等

 

字典的创建:

infos = {'David' :{ 'age'    :25,
                    'gender' :'Male',
                    'hobbies':['Basketball', 'Pingpang', 'Hiking'] },
          
          'Mary' :{ 'age'    :23,
                    'gender' : 'Female',
                    'hobbies': [' Reading', 'Movies']},
          
          'Henry':{ 'age'    :23,
                    'gender' : 'Male'
                    'hobbies': ['Diving', 'Hiking']}
        }
print(infos)
字典的常用函数("dictdata"代指某一个字典)
dictdata.items()返回dictdata所有item(输出字典中的所有)
dictdata.keys()返回dictdata的所有关键词
dictdata.values()返回dictdata的所有数据
dictdata.get(keystr)获取关键词keystr对应的数据
dictdata [keystr]获取关键词keystr对应的数据

将字典中转化为List索引某一项进行输出(切片)

list(字典.items())[0]

(  'David',
              {'age': 25,
               'gender': 'Male',
               'hobbies': ['Basketball' , 'Pingpang' , 'Hiking'] }   )

 

  • 布尔值boolean

不多说,说特别的。

成员运算符in
案例结果
4 in [1,2,4]True
4 not in [1,2,4]False
3 in [1,2,4]False
3 not in [1,2,4]True

2.  逻辑语句

  •  if语句

格式:

if   条件一:
    执行语句一

elif 条件二:
    执行语句二

elif 条件三:
    执行语句三

else:
    执行语句四

空字符串、空列表等各种空值等同于False;非空值等同于True.

  • for循环

格式:

for 元素 in 集合:
    执行语句

实例一:累加

result = 0
for i in range(1,101):    #range(1,101)表示生成1到100的序列
    result = result + i

实例二:遍历列表

 

names = ['David','Henry','Mary']

for name in names:
    print(name)

实例三:字符串

name = 'David'

for s in name:
    print(s)

实例四:字典

输出字典元素

infos = { 'David'  :{'age':25,
                     'gender': 'Male'},
          'Mary'   :{'age':23,
                     'gender': ' Female'},
          'Henry'  :{'age' :23,
                     'gender': 'Male'}
        }
for item in infos.items():
    print(item)

#输出的是元组

( 'David' , { 'age' : 25,  'gender' : 'Male'} )
( 'Mary' ,  { 'age' : 23,  'gender' : 'Female'} )
( 'Henry', { 'age' : 23,  'gender' : 'Male'} )

拆包输出字典

for name, info in infos.items( ):
    print(name, info)

( 'David' , { 'age' : 25,  'gender' : 'Male'} )
( 'Mary' ,  { 'age' : 23,  'gender' : 'Female'} )
( 'Henry', { 'age' : 23,  'gender' : 'Male'} )

可以看出info 指代  name后的数据{ 'age' : 23,  'gender' : 'Male'} 

for name, info in infos.items( ):
    print(name)

David
Mary
Henry

实例五:打印乘法口诀表

for row in range(1, 10):
    for col in range(1, row+1):
        formula = '{co1}*{row}={res}' .format(col=col, row=row, res=col*row)
    print(formula, end='\t')
print()
  1. 循环嵌套
  2. print函数结束默认添加换行(print的end参数 = ' \n ')
  3. 构造一个字符串模板 = '{co1}*{row}={res}' ,接收关键词
  4. 用format()函数添加字符串
  • 列表推导式

实例一:表示

[x*x for x in n]    #集合n = range(1,10)

[x for x in n]  表示一个列表,元素提取于集合n中的各个元素x

而[x*x for x in n]  表示是一个提取的元素x自乘的列表

实例二:带条件的列表推导式


#[x*x for x in n if x>5] 等价于

[x*x
    for x in n
        if x>5 ]

实例三:对一个字符串列表进行大小写操作

words = ['Life','Is','Short']

result = [w.lower() for w in words]
print(result)

['life',

 'is',

 'short']

实例四:统计单词词频

lower_words = ['life',  'is',  'short','is',
               'so',    'We',  'use',  'python',
               'python','is',  'easy', 'to','learn',
               'and',   'easy','to',   'use']
wordset = set(lower_words)

#3.对wordset 中每个词语w进行-一些操作
[lower_words.count(w) for w in wordset]

[1,1,1,2,2,1,2,2,2,1,1]

#构造成元组,让单词与词频一起显示
[ (w, lower_words.count(w)) for w in wordset ]

[ ('so', 1),
  ('and', 1),
  ('learn', 1),
  ('use', 2),
  ('to', 2),
  ('we', 1),
  ('easy', 2),
  ('python', 2),
  ('is', 2),
  ('short', 1),
  ('life', 1)  ]

 

 

 

 

 

  • try-except

except代表在出错的地方执行某个语句

for x in [1,2,0,2,1]:
    try:
        print(10/x)
    except:
        print('0除错误')
        #pass

10.0
5.0
0除错误
5.0
10.0

用pass跳过出错的地方

for x in [1,2,0,2,1]:
    try:
        print(10/x)
    except:
        #print('0除错误')
        pass

10.0
5.0
5.0
10.0

 

  • 可视化图表

在数据的输出结果中以图表的形式表现出来。需要导包 import matplotlib.pyplot as plt

 

3.函数

模板

 

  • 内置函数:
常用的内值函数
abs(num)

取num的绝对值

min(list)取列表的最小值
max(list)

取列表的最大值

sum(list)求列表的和
sorted(list,reverse = True)排序,reverse = True或false 调整排序方向
range(start,end,step)

生成以步长为step(默认为1)、

           start到end-1的序列

count(list,value)返回list中某个value出现的次数
reverse(list)反转列表
remove(list,value)移除列表中某个value,返回修改后列表

 

  • map(func, list)映射运算

将func运算映射到list的每一个元素

实例一:对列表中的列表元素进行求和

lst = [[1,1], [1,2], [1,2], [1,2], [1,2], [1,2], [1,2]]
res = map(sum, lst)
list(res)

[2,3,3,3,3,3,3]

4.文件操作函数

open(file, mode='r', encoding=None)

  1. file 文件路径.
  2. mode操作方式们,最常用的是r和a+。r读取,a+是追加写入 .
  3. encoding编码方式,常见的文件编码方式主要是utf-8和gbk

读取返回io对象
io对象有read()方法

重点函数:

 

 

5.内置库 - 文件路径pathlib库

相对路径:与此时的代码包同在一个文件夹下 ’ img‘

绝对路径:'C:/Users/thunderhit/Desktop/Python数据分析入门/02-Python语法入门/img'

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值