[Python入门学习]-Python的字符串、组类型与循环

一.字符串

1.字符串的声明

#声明一个字符串
#单引号声明
s = 'Hello Python'
print(s)

#双引号声明
s = "Hello Python"
print(s)

#三引号声明
s = """Hello
Python
"""
print(s)

2.字符串的操作

#字符串的操作
#单个访问字符串中的字符
s = 'Hello Python'
print(s[0])

3.字符串的切片操作

#访问字符串中的子串 切片操作
s = "Hello Python"
print(s[0:5]) #左闭右开,位置>=0  <5

#字符串相加计算
s1 = "Hello"
s2 = " Python"
print(s1 + s2)
print("我是" + s1)

#字符串更新操作
s1 = "Hello String"
s2 = "Python"
print(s1[:6] + s2)

4.字符串成员运算

#字符串的成员运算
s1 = "Hello String"
s2 = "H"

#包含运算 in
print(s2 in s1)
#不包含运算
print(s2 not in s1)

5.转义字符

#转义字符
print("\'")
print("\"")

#换行符
print("Hello\nPython")

#制表符tab
print("Hello\tPython")

#回车
print("Hello\rPython")  #光标到行首,打印\r之后的内容

#输出一个字符串:Hello\nPython
#原始字符串
print(r"Hello\nPython")
print(R"Hello\nPython")

6.字符串格式化输出

#字符串的格式化输出
print("我叫%s,今天是我第%d天学习Python!" % ('小明', 10))

7.字符串的内建函数

#字符串的内建函数
#查找字符串
s = "Hello Python".find("Hello")
print(s)
s = "Hello Python".find("e")
print(s)

#转换为小写字符
print("Hello Python".lower())

#转换为大写字符
print("Hello Python".upper())

#返回字符串长度 __len__()这个函数返回的是自然长度
print("Hello Python".__len__())

#判断字符串是否只包含空格
print(" ".isspace())
print("a ".isspace())

#字符串替换
print("Hello Python".replace("o", "ee"))

  python自带的学习文档 python -m pydoc -p 8888启动,然后就可以http://localhost:8888访问了

 

二.组类型

1.python组类型

'''
列表:一组数据
list是有序的序列
序列中的每个元素分配一个数字,就是索引,也是位置角标、坐标
也是从0开始
'''
list1 = ['建国',13, '爱国',15,'卫国',18]
print(type(list1))
print(list1)

2.访问列表

#访问列表
list1 = ['建国',13, '爱国',15,'卫国',18]
print(list1[0])
print(list1[2:])
print(list1[1:3])

#更新
list1[1] = 14
print(list1)

#添加操作
list1.append('建军')
list1.append(20)
print(list1)

list1 = list1 + ['二丫',25]
print(list1)

#删除
del list1[4]
print(list1)

3.嵌套列表

#嵌套列表
list1 = [['建国','爱国','卫国'], [12, 14, 16]]
print(list1)
print(list1[0][0])

#返回列表元素的个数
count = len(list1)
print(count)

#移除列表中的元素,并且返回这个值
l = list1.pop(1);
print(l)
print(list1)

#对列表中的元素进行排序
list1 = [12,11,13]
list1.sort()
print(list1)

#查找列表中第一个匹配的元素的索引值
list1 = [12, 11, 13]
i = list1.index(11)
print(i)

4.list操作练习

#list操作练习
station = input("请输入车站名称:")
bus_list = ['建国','爱国']
if station == '天安门东':
    bus_list.append('国庆')
    bus_list.remove('建国')
elif station == '国贸':
    bus_list.append("卫国")
    bus_list.remove("爱国")
elif station == "四惠":
    bus_list.append("建军")

print(bus_list)

5.元组

'''
元组:在一个小括号内包裹着
'''
l = [1,2,3]
t = ('建国',1,'卫国',2,'建军',3)
print(type(l))
print(type(t))

print(t[0])
print(t[2:])

#元组不能修改 如下添加方式运行都会报错
# t.append('紫琪')
# print(t)
#
# t = t + ('紫琪')
# print(t)

6.集合

'''
集合,是一个无序的不重复元素的序列
两种声明方法
使用{}
set()
'''
#声明一个集合
set_param = {"狗子","秀儿","草儿","狗蛋","嘎子","狗子"}
print(set_param)

#判断元素是否在集合内
print("子轩" in set_param)
print("嘎子" in set_param)

7.集合间的运算

#两个集合间的运算
a = set('abcdef')
b = set('abcxyz')
print(a)
print(b)

print(a & b)
print(a | b)  #a和b的所有元素
print(a ^ b)  #a和b不同时包含的元素

#集合添加元素
my_set = set(("建国","爱国","卫国","建军"))
my_set.add("国庆")
print(my_set)

#移除指定元素
my_set.remove("卫国")
print(my_set)

#随机移除一个元素
pop_param = my_set.pop()
print(pop_param)
print(my_set)

#计算集合的个数
print(len(my_set))

#判断元素是否在集合中
print("卫国" in my_set)

#清空集合
my_set.clear()
print(my_set)

8.字典

'''
字典是一种可变容器类型,也是可以存储任意类型的对象
'''
d = {'建国':12,'卫国':15, '爱国':13}
print(d)

#字典的操作
#访问
keys = d.keys()
print(keys)
#返回所有的值
print(d.values())
print(d['建国'])

#增加
d['小明'] = 14
print(d)

#更新
d['建国'] = 20
print(d)

#删除
del d['卫国']
print(d)

#字典的函数操作
#判断键是否在字典中
i = '建国' in d
print(i)

#清空字典
d.clear()
print(d)

9.条件语句

'''
条件控制
 比较运算符
  ==
  >
  >=
  <
  <=
  !=
'''
i = "a"
j = "B"
if i<j:
    print("a小")
else:
    print("a大")
'''
ascii码表
'''
print(ord(i))
print(ord(j))

#ascii码表上的数字转换成一个字符
print(chr(97))
print(chr(76))

10.成员运算符

'''
成员运算符
in
not in
'''
my_string = "abcdefg"
if 'a' in my_string:
    if 'b' in my_string:
        print("a和b都在my_string中")

if 't' not in my_string:
    print("t不在my_string中")

'''
逻辑运算符
and or not
'''
house_person = ['建国', '爱国', '国庆', '卫国']
if '建国' in house_person and  '卫国' in house_person \
    and  '国庆' in house_person and '卫国' in house_person:
    print("他们在打麻将")
else:
    print("他们在打游戏")

if '建国' not in house_person:
    print("建国没在打麻将")
else:
    print("建国正在打游戏")

11.真假值的判断

'''
关于True和False的讨论
'''
print(True and False)
print(True or False)
print(not True)

'''
1其实是代表了True
大于0的数返回True
0代表了False
'''
print(1 and 0)
print(1 or 0)
print(not 1)

print(2 and 0)
print(2 or 0)
print(not 2)

'''
and需要判断到最后一个,只有全部为真的时候,才会返回真
or的判断逻辑,只要碰到真值,就直接返回真,后边的其实是不用再判断了
'''
print(3 and 4 and 5)
print(3 or 4 or 5)

12.身份运算符

'''
身份运算符
==:判断的是值
is:判断内存地址
is not:
'''
#如下j并不是重新申请了一块内存地址,而是直接指向了1的所占有的这块地址
i = 1
j = 1
print(i == j)
print(i is j)
print(id(i))
print(id(j))

#在重新运算得到一个新的值的时候,重新申请了一块地址
j = j + 1
print(id(j))

list_1 = [1, 2, 3]
list_2 = [1, 2, 3]
print(list_1 is list_2)
print(list_1 == list_2)
print(id(list_1))
print(id(list_2))

三.循环

1.循环

#如果没有循环条件变化

#死循环
# i = 1
# while i<10:
#     print("这是循环")

#while循环
#求1到10的和
n = 1
count = 0
while n<=10:
    count += n
    n += 1
print(count)

#for循环
list1 = [1,2,3,4,5,6,7,8,9,10]
count= 0
for i in list1:
    count = count + i
print(count)

#range来控制上限
count = 0
for i in range(11):
    count = count + i
print(count)

2.循环中的break、continue

'''
循环的中断
break:跳出整个循环
continue:跳出本次循环,继续执行下一次循环
'''
while True:
    print(1)
    break
    print(2)

# while True:
#     print(1)
#     continue
#     print(2)

i = 1
while True:
    print("外层循环1")
    while True:
        print("内层循环")
        break
    print("外层循环2")
    #break
    if i == 1:
        print("外层循环3")
        break

3.循环算法练习

'''
冒泡排序
'''
nums = [3, 1, 25, 6, 8]
for i in range(len(nums) - 1):
    for j in range(len(nums) -i -1):
        if nums[j] > nums[j+1]:
            nums[j], nums[j+1] = nums[j+1], nums[j]  #python中的两数交换
        print("" + str(j) + "次内循环" + str(nums))
    print("" + str(j) + "次外循环" + str(nums))
print("最后的结果:" + str(nums))

 

学习地址:https://ke.qq.com/webcourse/index.html#cid=320330&term_id=100380209&taid=2416816752485194&vid=f1428qbvadq

posted on 2019-03-30 21:46  bijian1013  阅读(565)  评论(0)    收藏  举报

导航