【python】基础

http://www.pythonclub.org/python-basic/start

http://my.oschina.net/captaintheron/blog/6437

一、Python 变量类型

Python是有变量类型的,而且会强制检查变量类型。
内置的变量类型有如下几种:

#整型
integer_number = 90
 
#浮点
float_number = 90.4
 
#复数
complex_number = 10 + 10j
 
#list 序列
sample_list = [1,2,3,'abc']
 
#dictionary 字典
sample_dic = {"key":value, 2:3}
 
#tuple 只读的序列
sample_tuple = (1,3,"ab")
 
#嵌套
sample_nest = [(1,2,3),{1:2,3:4,'key':[1,2]},3]

二、一切都是对象

'str str'.split() # ['str', 'str']
 
# 1..is_integer()   # True
 
# is_integer(1)     # True
 
# 1.0.is_integer()  # False
 
[3,2,1].sort()    # [1,2,3]
 
sort([2,1,3])     # [1,2,3]

三、Python 程序流程控制

条件判断结构

flag1 = some_value
flag2 = other_value
if flag1:
    do_function_1()
elif flag2:
    do_function_2()
else:
    do_function_3()

循环结构

for i in range(0, 10):
    print(i)
 
for i in ['a','b','c','dd','eee']:
    print(i)

四、字符串

表示方法:
    * 字符串用单引号、双引号或三重引号进行标识
    * 三重引号标识的字符串可任意换行
    * 可使用反斜杠对单引号或双引号标识的字符串进行分行
    * 在字符串前加"r"后可使转义符号(如"\n"、"\t"等)失效
    * 在字符串前加"u"后将定义为 Unicode 字符串(可在字符串中使用 Unicode-Escape 编码)
    * "u"和"r"可联合使用,标识为"ur"

运算符:
    * 可以使用"+"号来进行连接,如 "abc" + "def"
    * 两个字符串值之间会自动连接(只限字符串,变量和表达式不可),如 "str" "ing"
    * 可以使用"*"号来进行重复,如 "abc" * 5
    * 使用使用函数"len()"返回字符串长度

分割(切片):
    * 字符串可使用下标(索引)来查询,如 "word[4],word[0:2],word[2:],word[:4]"
    * 下标从0开始
    * 查询出的字符串为只读,不能使用字符串索引赋值
    * word[:2] + word[2:] 等于 word
    * 索引可以为负数,为负数时计数从右边开始

#1.复制字符串
#strcpy(sStr1,sStr2)
sStr1 = 'strcpy'
sStr2 = sStr1
sStr1 = 'strcpy2'
print sStr2

#2.连接字符串
#strcat(sStr1,sStr2)
sStr1 = 'strcat'
sStr2 = 'append'
sStr1 += sStr2
print sStr1

#3.查找字符
#strchr(sStr1,sStr2)
sStr1 = 'strchr'
sStr2 = 'r'
nPos = sStr1.index(sStr2)
print nPos

#4.比较字符串
#strcmp(sStr1,sStr2)
sStr1 = 'strchr'
sStr2 = 'strch'
print cmp(sStr1,sStr2)

#5.扫描字符串是否包含指定的字符
#strspn(sStr1,sStr2)
sStr1 = '12345678'
sStr2 = '456'
#sStr1 and chars both in sStr1 and sStr2
print len(sStr1 and sStr2)

#6.字符串长度
#strlen(sStr1)
sStr1 = 'strlen'
print len(sStr1)

#7.将字符串中的小写字符转换为大写字符
#strlwr(sStr1)
sStr1 = 'JCstrlwr'
sStr1 = sStr1.upper()
print sStr1

#8.追加指定长度的字符串
#strncat(sStr1,sStr2,n)
sStr1 = '12345'
sStr2 = 'abcdef'
n = 3
sStr1 += sStr2[0:n]
print sStr1

#9.字符串指定长度比较
#strncmp(sStr1,sStr2,n)
sStr1 = '12345'
sStr2 = '123bc'
n = 3
print cmp(sStr1[0:n],sStr2[0:n])

#10.复制指定长度的字符
#strncpy(sStr1,sStr2,n)
sStr1 = ''
sStr2 = '12345'
n = 3
sStr1 = sStr2[0:n]
print sStr1

#11.字符串比较,不区分大小写
#stricmp(sStr1,sStr2)
sStr1 = 'abcefg'
sStr2 = 'ABCEFG'
print cmp(sStr1.upper(),sStr2.upper())

#12.将字符串前n个字符替换为指定的字符
#strnset(sStr1,ch,n)
sStr1 = '12345'
ch = 'r'
n = 3
sStr1 = n * ch + sStr1[3:]
print sStr1

#13.扫描字符串
#strpbrk(sStr1,sStr2)
sStr1 = 'cekjgdklab'
sStr2 = 'gka'
nPos = -1
for c in sStr1:
    if c in sStr2:
        nPos = sStr1.index(c)
        break
print nPos

#14.翻转字符串
#strrev(sStr1)
sStr1 = 'abcdefg'
sStr1 = sStr1[::-1]
print sStr1

#15.查找字符串
#python strstr
#strstr(sStr1,sStr2)
sStr1 = 'abcdefg'
sStr2 = 'cde'
print sStr1.find(sStr2)

#16.分割字符串
#strtok(sStr1,sStr2)
sStr1 = 'ab,cde,fgh,ijk'
sStr2 = ','
sStr1 = sStr1[sStr1.find(sStr2) + 1:]
print sStr1

五、自定义函数

#语句结构:
def 变量名(参数列表):
    语句体
    return 返回值

注意事项:
    * 函数必须先定义才能使用,即函数的定义必须在使用它的语句之前
    * 调用函数时要在函数名后加"()",否则调用的是函数的地址
    * 如果函数中没有"return"语句或"return"语句为空时,返回的值为"None"
    * 函数的参数中可直接使用事件定义过的变量名
    * Python中的变量皆为全局变量,变量在函数中被修改后,函数外使用时为修改为的值
    * 函数中的变量一般为局部变量,但由于列表和字典传递时传递的是地址,所以会修改原变量内容
    * 可以在变量前加"global"声明为全局变量。如"global x"
    * 函数起始行的多行字符串可以使用"函数名.doc"来调用。适合编写函数说明

原文地址:https://www.cnblogs.com/549294286/p/2957965.html