Python基础知识概要

非常简单的python入门,了解这门语言,用来为接下来的开发做基础。

大家好,又见面了,我是全栈君。

还是基于上篇提到的自动回贴的需求,通过抓包可以获取需要post的登录信息,实现登录,之后就要通过python实现自动回贴,

但是之前没有用过python,为了一个功能要系统的学习一门语言必然浪费很多时间,所以就要速成,根据其他语言基础快速做迁移。

以下便是概要,简单了解基本用法,为接下来的开发做基础。

# coding=utf-8

###############
#输入输出
###############

# 输出实例
print 'hello','world'

# 输入实例
name = raw_input();
print 'hello,',name

#输入时,提示
name=raw_input('please enter your name:');
print 'hello',name

#格式转换,如果输入字母等非数字字符会报错
birth = int(raw_input('birth:'))


###############
#字符表示
###############
#转义
print '\\\n\\'

#防止转义
print r'\\\n\\'

#多行内容表示,用三引号包括
print '''line1
line2
ling2'''

#布尔值
print 3>2

#Unicode表示的字符串用u''表示,转化成UTF-8编码
print u'ABC'.encode('utf-8')
print u'中文'.encode('utf-8')

#文本文件编码
#!/usr/bin/env python
# -*- coding: utf-8 -*-


###############
#格式化
###############

#格式化输出实例
print 'Hello,%s' % 'world'

#格式化整数和小数
print '%2d-%02d' %(3,1)
print '%.2f' %3.1415926

#万能格式化%s,可以替代所有格式化
print '%s-0%s' %(3,1)
print '%s' %3.1415926

#对于Unicode字符串,用法完全一样,但最好确保替换的字符串也是Unicode字符串
print u'Hi,%s' % u'Jason0539'

#输出百分号%,用双%即可
print 'growth rate:%d%%' %7

###############
#列表list
###############

#列表list,可变的有序列表
classmates = ['Jack','Bob','Tracy']
print classmates

#len函数获取它的长度
print len(classmates)

#获取某个元素,用中括号索引
print classmates[2]

#倒数索引,可以倒序获取数组元素
print classmates[-1]

#append追加元素到末尾
classmates.append('Adam')
print classmates

#insert插入到指定位置
classmates.insert(0,'Jason0539')
print classmates

#pop 删除末尾元素
print classmates.pop()

#pop 加入参数删除指定位置元素
print classmates.pop(0)
print classmates

#元素改变,直接赋值即可
classmates[0]='Jason0539'
print classmates

#list可以嵌套,可用二维索引
s = ['python','java',['asp','jsp'],'scheme']
print s[2][1]

#空列表
l=[]
print len(l)

###############
#元组tuple
###############

#不可变有序的数组
#定义元组
classmates=('Michael','Bob','Tracy')
print classmates

classmates=()
print classmates

t=(1,)
print t

#注意不能用 t = (1) 来定义, 因为它定义的不是tuple,是 1 这个数,这是因为括号既可以表示tuple,又可以表示数学公式中的小括号,这就产生了歧义,因此,Python规定,这种情况下,按小括号进行计算,计算结果自然是1。

#表面上可变的tuple
t=('a','b',['A','B'])
print t
t[2][0]='X'
t[2][1]='Y'
print t
#表面上看,tuple的元素确实变了,但其实变的不是tuple的元素,而是list的元素。tuple一开始指向的list并没有改成别的list,所以,tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。即指向 ‘a’,就不能改成指向 ‘b’ ,指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的

###############
#字典dict
###############

#字典 dict 即键值对组,dict的key必须是不可变对象。
d={'Michael':95,'Bob':75,'Tracy':85}
print d['Michael']

#把数据放入dict的方法,除了初始化时指定外,还可以通过key放入,在这之前,d 必须被声明,否则会报错
d['Jason']=5390
print d

#判断key是否在字典中,区分大小写
#1.in判断
print 'Jason' in d

#2.通过dict提供的get方法判断,如果key不存在,可以返回None,或者返回自己指定的默认value
print d.get('Thomas')
print d.get('Thomas',-1)

#3.要删除一个key,用pop(key)方法,对应的value也会从dict中删除
d.pop('Jason')
print d

###############
#集合set
###############
#set和dict类似,也是一组key的集合,但不存储value,没有重复的key
#要创建一个set,需要提供一个list作为输入集合
s = set([1,2,3])
print s

#重复元素在set中自动被过滤
s = set([1,2,3,2,3,2,4])
print s

#通过add(key)方法可以添加元素到set中,可以重复添加,但没有效果
s.add(4)
print s

#通过remove(key)方法可以删除元素
s.remove(4)
print s

#判断元素是否在set中
s = 5 in s
print s

#set可以看成数学意义上的无序和无重复元素的集合,因此,两个set可以做数学意义上的交集、并集等操作
s1=set([1,2,3])
s2=set([2,3,4])
print s1 & s2
print s1 |s2

###############
#字符串操作,大小写转换
###############
#判断字符串
s = "jason0539"
s.isalnum()#所有字符都是数字或者字母
s.isalpha()#所有字符都是字母
s.isdigit()#所有字符都是数字
s.islower()#所有字符都是小写
s.isupper()#所有字符都是大写
s.istitle()#所有字符都是首字母大写,像标题
s.isspace()#所有字符都是空白字符、\t、\n

#大小写转换
s.upper()#转大写
s.lower()#转小写
s.capitalize()#把第一个字母转化为大写字母,其余小写
s.title()#把每个单词第一个字母大写,其余小写

作者:jason0539

博客:http://blog.csdn.net/jason0539(转载请说明出处)

扫码关注我微信公众号,看点不一样的文章

Python基础知识概要

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/121309.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 全面了解 Nginx 到底能做什么

    全面了解 Nginx 到底能做什么

    2021年11月4日
    40
  • griddata方法使用插值方法

    griddata方法使用插值方法’linear’Linearinterpolation(default)双线性插值’cubic’Cubicinterpolation双三次插值’natural’Naturalneighborinterpolation 自然邻近插值’nearest’Nearestneighborinterpolation最近邻近插值’v4’MATLAB®4grid

    2022年5月26日
    41
  • Istio组件日志设置[通俗易懂]

    1.istio-pilot日志级别编辑istio-system.deployment.istio-pilot,修改args中–log_output_level=default:指定日志级别2.istio-policy日志级别设置同istio-pilot3.istio-proxy(envoy)日志级别设置进入istio-proxy容器中,通过如下命令进行设置:curl-…

    2022年4月18日
    51
  • node+express操作cookie「建议收藏」

    node+express操作cookie「建议收藏」Cookie:有时也用其复数形式Cookies。类型为“小型文本文件”,是某些网站为了辨别用户身份,进行Session跟踪而储存在用户本地终端上的数据(通常经过加密),由用户客户端计算机暂时或永久保存的信息。用node操作cookie我们需要cookie-parser模块npmicookie-parser-s接下来在我们的文件中引入此模块//引入express模块constexpress=require(‘express’)//实例化expressconstapp=

    2022年7月11日
    16
  • python图像处理之scikit-image基本用法

    python图像处理之scikit-image基本用法本文介绍Python语言用于数字图像处理,那么要使用python进行各种开发和科学计算,需要对应相对的python包,python有很多的数字图像处理相关的包,像PILPillowOpenCVscikit-image等等其中PIL和Pillow只提供最基础的数字图像处理,功能有限;opencv实际上是一个c++库,只是提供了python接口,scikit-image…

    2022年10月9日
    2
  • 关于JavaScript闭包理解

    关于JavaScript闭包理解js 的作用域分两种 和 基于所熟悉的作用域链相关知识 知道在 js 作用域环境中访问变量的权利是的 内部作用域可以获得当前作用域下的变量并且可以获得当前包含当前作用域的外层作用域下的变量 反之则不能 也就是说在外层作用域下无法获取内层作用域下的变量 同样在不同的函数作用域中也是不能相互访问彼此变量的 那么想在一个函数内部也有限权访问另一个函数内部的变量该怎么办呢 闭包就是用来解决这一需求的 我们首先知道闭包有 3 个特性 函数嵌套函数 函数内部可以引用函数外部的参数和变量 参数和变量不会被垃圾回收机制回

    2025年9月16日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号