一、基本数据类型

整型、浮点型、布尔型内容略

1、字符串的格式化

name='python'
age=27 # 打印“我是python,今年27岁了”
new_str='我是'+name+',今年'+str(age)+'岁了'
print(new_str) # python2的做法
new2='我是%s,今年%d岁了'%(name,age)
print(new2) # python3的做法
new3='我是{},今年{}岁了'.format(name,age)
print(new3)
# 当大括号比较多的时候,还可以如下做法
new4='我是{name},今年{age}岁了'.format(
name='aaa',
age='bbb'
)
print(new4) # python3.6之后
new5=f'我是{name},今年{age}岁了'
print(new5)

2、空值

二、数据结构

1、列表List

1.1、列表的创建

a=[1,2,3]
b=[1,'abc',2.0,['a','b','c']] print(a)
print(b)
print(a[0],a[1],a[2],sep='-') c=b[1:3]
s='abcdef' print(c,type(c))
print(s[1:3],s[-1],type(s))

1.2、列表的基本操作

# 一、获取列表的基本信息
list1=[9,1,-4,3,7,11,3]
print('list1的长度=',len(list1))
print('list1的最大值=',max(list1))
print('list1的最小值=',min(list1))
print('list1中3这个元素出现了{}次'.format(list1.count(3))) # 二、列表的改变
list2=['a','c','d']
# 列表结尾添加新元素
list2.append('e')
print('list2=',list2) # 列表元素之间添加新元素
list2.insert(1,'b')
print('list2=',list2) # 删除列表元素
list2.remove('b')
print('list2=',list2) # 修改列表元素
list2[0]='A'
print('list2=',list2)
'''
注意这里要与字符串进行区分
a='123'
a[0]='a' 报错
a='abc' 只能重新赋值
''' # 列表翻转
list3=[1,2,3]
list3.reverse()
print('list3=',list3) # 列表排序
list4=[9,1,-4,3,7,11,3]
list4.sort() #升序
# list4.sort(reverse=True) #降序
print('list4=',list4)

1.3、列表解析

a=[1,2,3,4,5,6,7,8]

b=[item*item for item in a]
print(b) c=[item for item in a if item%2==0]
print(c)

2、元组Tuple(不可修改)

2.1、元组的创建及访问

# 元组的创建
a=(1,2,3)
b=1, print(a,type(a))
print(b,type(b)) # 元组的访问
print(a[1])
print(a[1:])
print(a[-1])

2.2、元组的方法

# 获取元组的基本信息
tuple1=[9,1,-4,3,7,11,3]
print('tuple1的长度=',len(tuple1))
print('tuple1的最大值=',max(tuple1))
print('tuple1的最小值=',min(tuple1))
print('tuple1中3这个元素出现了{}次'.format(tuple1.count(3))) print(tuple1.index(7)) #查询元素7的下标

3、字典Dictionary

3.1、字典的创建及访问

# 字典创建
a={
1:'a',
2:'b',
'':'c'
}
print(a) e=dict(a=1,b=2,c='a')
print(e) # 字典的访问
print(e['c']) # 字典的增加、修改
e['d']=123
e['c']=3
print(e)

3.2、字典的基本操作

d={
'Name':'Jack',
'Age':9,
'Grade':5,
}
print(d.get('name')) # 避免传入字典没有的key时报错 print(d.keys())
print(d.values())
print(d.items()) c=d.pop('Name')
print(c)
print(d) d.clear()
print(d)

4、集合Set

a={'a','b','c'}

t='d' in a
print(t) s=[1,2,3,2,4,5,2]
s1=set(s)
print(s1,type(s1),list(s1)) a=''
s2=set(a)
print(s2) s3={1,2,3,4}
s3.add(5)
print(s3)
s3.remove(5)
print(s3)

三、逻辑思维

1、if语句

a=int(input('请输入一个数字:'))

if a>0:
print('这是个正数')
elif a==0:
print('这是零')
else:
print('这是负数')

2、循环语句

2.1、while循环

a=5

while a>0:
print(a)
a=a-1 print('结束')

2.2、for循环

a=''
b=[1,2,3,4]
c=('a','b','c','d')
d={1,2,3,5,9} for i in d: # d可以换成a、b、c
print(i) print('------------------------------') e={1:'a',2:'b',3:'c'}
for a,b in e.items():
print('{}:{}'.format(a,b)) print('------------------------------') for i in range(1,5):
print(i)

2.3、break和continue

for i in range(1,5):
print(i)
if i%3==0:
break print('------------------------------') for i in range(6): # 0~5
if i%2==0:
continue
print(i)

2.4、小运用

import random

a=random.randint(0,100)  # 产生【0,100】之间的整数(包括0和100)

while True:
num=int(input('请输入0-100之间的整数:'))
if num==a:
print('猜对了')
break
elif num>a:
print('猜大了,请重新猜')
else:
print('猜小了,请重新猜')

四、函数

1、函数的定义和调用

def sum(a,b):
return a+b
print(sum(5,6))
print(sum([1,2],[3,4])) def max(a):
if not a:
return None
max_value=a[0]
for i in a:
if i>max_value:
max_value=i
return max_value a=[1,4,5,2,3,8,9]
print(max(a))

2、全局的作用域

基本常识略,以全局变量举例

z=1
print(z) def demo(a):
global z
z=z+a
print(z) demo(10)
print(z)

3、可变参数

def add(*args):
result=0
for i in args:
result+=i
return result print(add(1,2,10,20))

33

4、递归

def demo(n):
if n==1:
return n
return n*demo(n-1) print(demo(5))

120

5、类和对象

class People:
def __init__(self,name,age):
self.name=name
self.age=age def say(self):
print('Hi,my name is {},and I am {} years old.'.format(self.name,self.age)) some=People('Jack',20)
print(some.name)
print(some.age)
some.say()

6、继承和多态

class Animal:
def eat(self):
print('Animal is eating') class Bird(Animal):
def sing(self):
print('Bird is sing') class Dog(Animal):
def eat(self):
print('Dog is eating') a=Animal()
a.eat() b=Bird()
b.sing() d=Dog()
d.eat()

7、匿名函数

def test(x,y):
return x+2*y f=lambda x,y:x+2*y print(test(1,2))
print(f(1,2)) def demo(x,y,f):
return f(x,y) print(demo(1,2,lambda x,y:x+2*y)) def add(n):
return lambda x:n+x # 高阶函数:返回一个函数 s=add(40) # 生成s这个函数
print(s(5))
print(s(-10))

8、高阶函数map、reduce、filter

a=[1,2,3,4]

for item in map(lambda x:x*x,a):
print(item) s=[item for item in map(lambda x:x*x,a)]
print(s) from functools import reduce
ss=reduce(lambda x,y:x+y,a)
print(ss) sss=[item for item in filter(lambda x:x%2==1,a)]
print(sss)
s4=[item for item in a if item%2==1]          # 列表解析同样能实现相同功能
print(s4)

【麦兜搞it】Python入门的更多相关文章

  1. python 入门教程

    转载自:http://www.crifan.com/files/doc/docbook/python_beginner_tutorial/release/html/python_beginner_tu ...

  2. Python自动化运维之1、Python入门

    Python简介 python是吉多·范罗苏姆发明的一种面向对象的脚本语言,可能有些人不知道面向对象和脚本具体是什么意思,但是对于一个初学者来说,现在并不需要明白.大家都知道,当下全栈工程师的概念很火 ...

  3. Python入门-函数的使用到程序的公布安装

    Python入门-函数的使用到Python的公布安装 本文主要适合有一定编程经验,至少掌握一门编程语言的人查看. 文中样例大多都是简单到认识英文单词就能看懂的水平,主要讲的是Python的总体使用方法 ...

  4. 【转】python入门指引

    http://matrix.42qu.com/10757179 前言 其实我也不知道python怎么入门,由我来写这个真的不是很合适.我学python是直接找了dive into python来看.然 ...

  5. [转][RabbitMQ+Python入门经典] 兔子和兔子窝

    [转][RabbitMQ+Python入门经典] 兔子和兔子窝 http://blog.csdn.net/linvo/article/details/5750987 RabbitMQ作为一个工业级的消 ...

  6. python入门(9)字符串和编码

    python入门(9)字符串和编码 字符串是一种数据类型,比较特殊的是字符串有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理. 最早的计算机在设计时采用8个比 ...

  7. Python入门篇-返回值和作用域

    Python入门篇-返回值和作用域 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.返回值 1>.返回值概述 Python函数使用return语句返回“返回值” 所有函数都 ...

  8. Python入门学习指南

    对于初学者,入门至关重要,这关系到初学者是从入门到精通还是从入门到放弃.以下是结合Python的学习经验,整理出的一条学习路径,主要有四个阶段 NO.1 新手入门阶段,学习基础知识 总体来讲,找一本靠 ...

  9. 6 小时 Python 入门

    6 小时 Python 入门 以下操作均在 Windows 环境下进行操作,先说明一下哈 一.安装 Python 1.官网下载 Python 进入官网(https://www.python.org), ...

  10. python入门简介

    Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC ...

随机推荐

  1. ESP8266 UDP通信

    #include "driver/uart.h" #include "espconn.h" void ICACHE_FLASH_ATTR user_rf_pre ...

  2. flask开发环境

    1. 创建虚拟环境flask_py3 虚拟环境是一个互相隔离的目录 mkvirtualenv flask_py3 2.安装flask包 pip install flask==0.10.1 其他:导入f ...

  3. C# Winfrom 自定义控件添加图标

    Winfrom自定义控件添加自定义图标实现方式: 1.新建UserControl——略 2.寻找合适的图标文件——将文件和控件放置同一目录下(相同目录.自定义控件类名.图标文件名相同) 注:如果路径不 ...

  4. 循环遍历 文件夹 生成makefile

    在处理 openssl的makefile的source code问题,由于不支持makefile中添加整个文件夹,需要每个 .c 文件都要一个一个添加,所以做一个简单的脚本: #! /bin/bash ...

  5. Django drf:cbv源码、resful规范及接口、drf使用、response源码、序列化

    一.cbv源码分析 二.resful规范 三.django中写resful的借口 四.drf写resful的借口 五.APIVIew源码分析 六.drf之序列化 一.cbv源码分析 -CBV和FBV ...

  6. DataSnap初步二

    转:https://blog.csdn.net/a00553344/article/details/51670486 1. 一个典型的DataSnap服务器至少需要三个控件: TDSServer: D ...

  7. linux和unix下crontab的使用

    在LINUX中,周期执行的任务一般由cron这个守护进程来处理 [ps -ef | grep cron].cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间.cron的配置文件称为 ...

  8. 关于网站子目录绑定二级域名的方法(php网站手机端)

    最近帮客户做zencart网站手机模板用到了二级域名,通过判断手机访问来调用二级目录程序,http://afish.cnblogs.com/ 怎么说都比 http://www.cnblogs.com/ ...

  9. C++ 内存泄露和内存越界

    内存泄露:分配了内存而没有释放,逐渐耗尽内存资源,导致系统崩溃内存越界: 打个比方 就是你有一个500ml的水瓶,然后你倒在瓶里的水大于500ml 那个多余的就会流出来... 1. 原理分析经常有些新 ...

  10. setup elk with docker-compose

    version: '2' services: elasticsearch: image: docker.calix.local:18080/docker-elasticsearch:6.2.2-1 c ...