码迷,mamicode.com
首页 > 编程语言 > 详细

我的python入门(2)

时间:2016-05-02 22:50:39      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:

编码转换:

技术分享

 

示例:

#这是python2.7中

#_*_ coding:utf-8 _*_
temp = "你好,世界" # utf-8
#解码,需要指定原来是什么编码
temp_unicode = temp.decode("utf-8")

#编码,需要指定原来是什么编码
temp_gbk = temp_unicode.encode("gbk") 

print(temp_gbk)


#在python 3中

temp = "你好,世界"

temp_gbk = temp.encode("gbk")

print(temp_gbk)

 

运算符

1,算数运算:

  假设变量a持有10和变量b持有20,则:

运算符                     描述      实例
+ 加法 - 对操作符的两侧加值 a + b = 30
- 减法 - 从左侧操作数减去右侧操作数 a - b = -10
* 乘法- 相乘运算符两侧的值 a * b= 200
/ 除 - 由右侧操作数除以左侧操作数 b / a = 2
% 模 - 由右侧操作数和余返回除以左侧操作数 b % = 0
** 指数- 执行对操作指数(幂)的计算 a**b = 10 幂为 20
// 地板除 - 操作数的除法,其中结果是将小数点后的位数被除去的商。 9//2 = 4 而 9.0//2.0= 4.0

 

 

 

 

 

 

 

 

 

 实例:

#!/usr/bin/python

a = 20
b = 10
c = 0

c = a + b
print "w1 ", c

c = a - b
print "w2 ", c

c = a * b
print "w3 ", c

c = a / b
print "w4 ", c

c = a % b
print "w5 ", c

a = 2
b = 3
c = a**b
print "w6 ", c

a = 10
b = 5
c = a//b
print "w7 ", c

运算结果:

w1 30
w2 10
w3 200
w4 2
w5 0
w6 8
w7 2

 

2,比较运算

   假设变量a持有10和变量b持有20,则:

  运算符     描述    示例
==      检查两个操作数的值是否相等,如果是,则条件变为真。 (a == b) 不为 true.
!= 检查两个操作数的值是否等相等,如果值不相等,则条件变为真。 (a != b) 为 true.
<> 检查两个操作数的值是否等相等,如果值不相等,则条件变为真。 (a <> b) 结果为true。这类似于!=运算符。
> 检查左操作数的值是否大于右操作数的值,如果是,则条件成立。 (a > b) 为  true.
< 检查左操作数的值是否小于右操作数的值,如果是,则条件成立。 (a < b) 为true.
>= 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。 (a >= b) 不为 true.
<= 检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立。 (a <= b) 为 true.

 

 

 

 

 

 

 

 

 

 

 

实例:


#!/usr/bin/python
# -*- coding: UTF-8 -*-

a = 20
b = 10
c = 0

if ( a == b ):
print "e1 等于 b"
else:
print "e1 不等于 b"

if ( a != b ):
print "e2 不等于 b"
else:
print "e2 等于 b"

if ( a <> b ):
print "e3 不等于 b"
else:
print "e3 等于 b"

if ( a < b ):
print "e4 小于 b"
else:
print "e4 大于等于 b"

if ( a > b ):
print "e5 大于 b"
else:
print "e5 小于等于 b"


if ( a <= b ):
print "e6 小于等于 b"
else:
print "e6 大于 b"

if ( b >= a ):
print "e7 大于等于 b"
else:
print "e7 小于 b"

运算结果:
e1 不等于 b
e2 不等于 b
e3 不等于 b
e4 大于等于 b
e5 大于 b
e6 大于  b
e7 小于 b

  

3,赋值运算

运算符    描述 示例
= 简单的赋值运算符,赋值从右侧操作数左侧操作数 c = a + b 类似于 a + b 到 c
+= 添加和赋值操作符,它增加了右操作数左操作数和结果赋给左操作数 c += a 类似于 c = c + a
-= 减和赋值操作符,它减去右边的操作数从左边操作数,并将结果赋给左操作数 c -= a 类似于 c = c - a
*= 乘法和赋值操作符,它乘以右边的操作数与左操作数,并将结果赋给左操作数 c *= a 类似于 c = c * a
/= 除和赋值操作符,它把左操作数与正确的操作数,并将结果赋给左操作数 c /= a 类似于 c = c / a
%= 模量和赋值操作符,它需要使用两个操作数模和结果赋给左操作数 c %= a 类似于 c = c % a
**= 指数和赋值运算符,执行指数(幂)计算操作符和赋值给左操作数 c **= a 类似于 c = c ** a
//= 地板除,并分配一个值,执行地板划分对操作和指定值到左操作数 c //= a 类似于 c = c // a

 

 

 

 

 

 

 

 

 

 

 

 

 

实例:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
a = 20
b = 10
c = 0

c = a + b
print "q1的值为:", c

c += a
print "q2的值为:", c

c *= a
print "q3的值为:", c

c /= a
print "q4的值为:", c

c = 2
c %= a
print "q5的值为:", c

c **= a
print "q6的值为:", c

c //= a
print "q7的值为:", c

运算结果:
q1的值为: 30
q2的值为: 50
q3的值为: 1000
q4的值为: 50
q5的值为: 2
q6的值为: 1048576
q7的值为: 52428

 

4,逻辑运算

   假设变量a持有10和变量b持有20:

运算符     
    描述     例子
  and 所谓逻辑与运算符。如果两个操作数都为真,则条件为真。 (a and b) 为 true.
   or 所谓逻辑OR运算符。如果有两个操作数都为非零,则条件变为真。 (a or b) 为 true.
   not 所谓逻辑非运算符。用反转操作数的逻辑状态。如果条件为true,则逻辑非运算符将为false。 not(a and b) 为 false.

 

 

 

 

 

 

 

 

 

实例:

a = 10
b = 20

if ( a and b ):
   print " a 和 b 都为 true"
else:
   print " a 和 b 有一个不为 true"

if ( a or b ):
   print " a 和 b 都为 true,或其中一个变量为 true"
else:
   print " a 和 b 都不为 true"

# 修改变量 a 的值
a = 0
if ( a and b ):
   print " a 和 b 都为 true"
else:
   print " a 和 b 有一个不为 true"

if ( a or b ):
   print " a 和 b 都为 true,或其中一个变量为 true"
else:
   print " a 和 b 都不为 true"

if not( a and b ):
   print " a 和 b 都为 false,或其中一个变量为 false"
else:
   print " a 和 b 都为 true"

运算结果:
 a 和 b 都为 true
 a 和 b 都为 true,或其中一个变量为 true
 a 和 b 有一个不为 true
 a 和 b 都为 true,或其中一个变量为 true
 a 和 b 都为 false,或其中一个变量为 false

 5,成员运算

 

运算符                  描述         实例
      in 如果在指定的序列中找到值返回 True,否则返回 False。 x 在 y 序列中 , 如果 x 在 y 序列中返回 True。
  not in 如果在指定的序列中没有找到值返回 True,否则返回 False。 x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。

 

 

 

 

 

 

 

 

 

实例: 

#!/usr/bin/python
# -*- coding: UTF-8 -*-

a = 10
b = 20
list = [1, 2, 3, 4, 5 ];

if ( a in list ):
   print "a 在给定的列表中 list 中"
else:
   print "a 不在给定的列表中 list 中"

if ( b not in list ):
   print "b 不在给定的列表中 list 中"
else:
   print "b 在给定的列表中 list 中"

# 修改变量 a 的值
a = 2
if ( a in list ):
   print "a 在给定的列表中 list 中"
else:
   print "a 不在给定的列表中 list 中"

运算结果:
a 不在给定的列表中 list 中
b 不在给定的列表中 list 中
a 在给定的列表中 list 中

Pychorm 的设置

 

1,模板

file => settings =>Editor => file and code template => python script =>右上方

   #!/usr/bin/env python

   # _*_ coding:utf-8 _*_

按OK确定   

2,文字大小

 

file => settings =>Editor => color and font =>font =>save as ... =>14

 

3,运行(3种方法)

    a,点击运行文件,右键 rum

     b,view => tooldar

        选中要执行的文件

        点击 运行

      c,在当前文件空白处,右键,rum

4,切换py版本

 

file => settings =>project interpreter => 选择版本

 

基本数据类型

1,数字

整型(Int) -    通常被称为是整型或整数,是正或负整数,不带小数点。

 

1,
n1 = 123
n2 = 456
print(n1 + n2)     #print(n1._add_(n2)) 这是内部执行的
2,
n1 = 4
ret = n1.bit_length()  #获取数字在二进制中的最短位数 
print(ret)

 

2,字符串(str)

1capitalize  首字母变大写
示例:
a1 = "alex"
ret = a1.capitalize()
print(ret)

2,center 让字符串居中
示例: a1
= "alex" a1.center(10,"*") print(ret) 3,count 在子 字符串中出现几个 a1 = "alex is alph" ret = a1.count("a1") print(ret) a1 = "alex is alph" ret = a1.count("a1",0,8) print(ret) 4,endswith 是否以什么结尾 示例:
temp
= "hello" print(temp.endswith("o")) 5,expandtads 一个tab换成8个空格 示例:
content
= ("hello\t999") print(content.expandtads()) print(content.expandtads(20)) 6,find 能找到就到那个位子,没找到就返回一个-1 示例:
s
= "alex hello" print(s.find("p") 7,format 字符串的格式化 示例:
s
= "hello {0}, age {1}" print(s) # {0} 占位符 new1 = s.format("alex", 19) print(new1) 运算结果: hello {0}, age {1} hello alex, age 19 8,index获取子序列的位子,如果没找到就报错 示例:
s
= "alex hello" print(s.index("p") 9,isalnum 判断字符串是否是字母和数字 #接self表示不用添加参数 示例:
a = "alex5" a.isalnum()
10,isalpha 是否是字母
11,iadigit 是否是数字 12,islower 是否是小写
13,title 变成标题 示例:
s
= "the schol" ret = s.title() print(ret) 运算结果: The School 14,istitle 是否是标题
15,isupper 检验是否全部是大写 16,join 用
**连接 示例:
li
= ["alex", "eric"] #中括号表示列表类型 s = "**".join(li) print(s) li = ("alex", "eric"#小括号表示元祖类型 s = "**".join(li) print(s) 17,ljust 内容左对齐,右侧填充
18,rjust 内容右对齐,左侧填充
19,lstrip 移除左边的空格 示例:
s
=" alex " news = s.lstrip() print(news) 20,strip 移除两边空白 rstrip 移除右边的空格 示例:
s
=" alex " news = s.rstrip() print(news) 21,partition 从左找 ,分割,前,中,后三部分 示例:
s
= " hello is world " ret = s.partition(is) print(ret)
22,rpartition 从右找,分割,前,中,后三部分
23,replace 表示替换 示例:
s
= " hello is world " ret = s.replace(l,a) print(ret) s = " hello is world " ret = s.replace(l,a,2) #从左起到第二个 print(ret)

24,rsplit 从右找 分割

25,split 从左找 分割

  示例:

  s = "alexalexalex"

  ret = s.split("e")
  print(ret)
  运算结果:
  [‘al‘, ‘xal‘, ‘xal‘, ‘x‘]

  s = "alexalexalex"
  ret = s.split("e",2)
  print(ret)
  运算结果:
  [‘al‘, ‘xal‘, ‘xalex‘]

  26,splitlines 根据换行分割

  27,startswith 是否以某个字符串开始

  28,swapcase 大写变小写,小写变大写

  示例:

  s = "aLeX"

  print(s.swapcase())
  运算结果:
  AlEx

  29,upper 变大写

 

列表list

name_list = ["eirc","alex","tony"]
print(name_list)
运算结果:
[‘eirc‘, ‘alex‘, ‘tony‘]

索引
name_list = ["eirc","alex","tony"]
print(name_list[0])
运算结果:
eirc

切片
name_list = ["eirc","alex","tony"]
print(name_list[0:2])
运算结果:
[‘eirc‘, ‘alex‘]

基本操作:

1,索引

示例:
s = "hello"
print(s[0])
print(s[1])
print(s[2])
print(s[3])
print(s[4])
ret = len(s) #len 表示有几个字符串
print(ret)
运算结果:
h
e
l
l
o
5

2,长度

#len 表示有几个字符串
示例:
s = "hello" ret = len(s) print(ret) 运算结果: 5

3,切片

切片

示例:
s
= "hello" print(s[0:2]) 运算结果: he

 

4,循环

#while循环
示例:
s = "hello" start = 0 while start <len(s): temp = s[start] print(temp) start +=1 运算结果: h e l l o #for循环 #continue,break在for循环中一样适用 示例:
s = "hello" for item in s: #item变量名 print(item) 运算结果: h e l l o s = "hello" for item in s: if item =="l": continue print(item) 运算结果: h e o s = "hello" for item in s: if item =="l": break print(item) 运算结果: h e

 4,列表list

示例:
name_list = ["eirc","alex","tony"] print(name_list) 运算结果: [eirc, alex, tony]

基本操作:

 

索引
name_list = ["eirc","alex","tony"]
print(name_list[0])
运算结果:
eirc
切片
name_list = ["eirc","alex","tony"]
print(name_list[0:2])
运算结果:
[‘eirc‘, ‘alex‘]

 

# len 
name_list = ["eirc","alex","tony"]
print(name_list[2:len(name_list)])
运算结果:
[tony]
# for
for i in name_list:
    print(i)
# 列表内部提供的其他功能



append 追加
示例:
name_list = ["eirc","alex","tony"]
name_list.append(seven)
print(name_list)
运算结果:
[eirc, alex, tony, seven]

示例:
name_list = ["eirc","alex","tony"]
name_list.append(seven)
name_list.append(seven)
name_list.append(seven)
name_list.append(seven)
print(name_list,count(seven))
运算结果:
4

# iterable 可迭代的
name_list = ["eirc","alex","tony"]
temp = [11,22,33,44]
name_list.extend(temp)
print(name_list)
运算结果:
[eirc, alex, tony, 11, 22, 33, 44]

index 找出所在位子的索引
name_list = ["eirc","alex","tony"]
temp = [11,22,33,44]
name_list.extend(temp)
print(name_list.index(alex))
运算结果:
1

insert 插入

示例:

name_list = ["eirc","alex","tony"]
temp = [11,22,33,44]
name_list.extend(temp)

name_list.insert(1,‘hello‘)
print(name_list)
运算结果:
[‘eirc‘, ‘hello‘, ‘alex‘, ‘tony‘, 11, 22, 33, 44]

 

pop  移除尾部的参数并且可以赋值到一个变量上a1

示例:

name_list = ["eirc","alex","tony"]
temp = [11,22,33,44]
name_list.extend(temp)

name_list.insert(1,‘hello‘)
print(name_list)
a1 = name_list.pop()
print(name_list)

print(a1)
运算结果:
[‘eirc‘, ‘hello‘, ‘alex‘, ‘tony‘, 11, 22, 33, 44]
[‘eirc‘, ‘hello‘, ‘alex‘, ‘tony‘, 11, 22, 33]

 44

remove 移除一个 要想都移除只能多次执行
示例:
name_list = [‘eirc‘, ‘hello‘,‘alex‘, ‘alex‘, ‘tony‘, 11, 22, 33, 44]
name_list.remove(‘alex‘)
print(name_list)
运算结果:
[‘eirc‘, ‘hello‘, ‘alex‘, ‘tony‘, 11, 22, 33, 44]

 

reverse 翻转
示例:
name_list = [‘eirc‘, ‘hello‘,‘alex‘, ‘alex‘, ‘tony‘, 11, 22, 33, 44]
name_list.reverse()
print(name_list)
运算结果:
[44, 33, 22, 11, ‘tony‘, ‘alex‘, ‘alex‘, ‘hello‘, ‘eirc‘]

 

del 删除一个索引
name_list = ["eirc","alex","tony"]
del name_list[1]
print(name_list)
运算结果:
[‘eirc‘, ‘tony‘]

#切片,范围删除

name_list = ["eirc","alex","tony"]
del name_list[1:3]
print(name_list)

运算结果:

["eirc"]

 

元组:

name_tuple = (‘alex‘, ‘eric‘)
# 索引
print(name_tuple[0])
# len
print(name_tuple[len(name_tuple)-1])
# 切片
print(name_tuple[0:1])
# for
for i in name_tuple:
print(i)
# 删除
# del name_tuple[0] 不支持
# count,计算元素出现的个数
print(name_tuple.count(‘alex‘))
# index 获取指定元素的索引位置
print(name_tuple.index(‘alex‘))

 

字典:

name_tuple = (‘alex‘, ‘eric‘)
# 索引
print(name_tuple[0])
# len
print(name_tuple[len(name_tuple)-1])
# 切片
print(name_tuple[0:1])
# for
for i in name_tuple:
print(i)
# 删除
# del name_tuple[0] 不支持
# count,计算元素出现的个数
print(name_tuple.count(‘alex‘))
# index 获取指定元素的索引位置
print(name_tuple.index(‘alex‘))

 

我的python入门(2)

标签:

原文地址:http://www.cnblogs.com/kongqi816-boke/p/5448609.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!