sys.stdin.readline()和raw_input()的区别:
sys.stdin.readline()会将标准的输入全部获取,包括末尾的'\n';
raw_input()获取的输入不包括换行符'\n'。
因此如果在平时使用sys.stdin.readline( )获取输入的话,不要忘了去掉末尾的换行符,可以用strip( )函数去掉(sys.stdin.readline( ).strip('\n')),这样处理一下就行了。
#coding=utf-8 (平安科技)
# 本题为考试多行输入输出规范示例,无需提交,不计分。
import sys
if __name__ == "__main__":
# 读取第一行的n
n = int(sys.stdin.readline().strip())
ans = 0
for i in range(n):
# 读取每一行
line = sys.stdin.readline().strip()
# 把每一行的数字分隔后转化成int列表
values = list(map(int, line.split()))
for v in values:
ans += v
print(ans)
程序代码:
#coding=utf-8
import sys# strip()方法只能用于移除字符串 开头和结尾 指定的字符(默认为空格或换行符)或字符序列。
# split(" ")--按空格切分。
aa=sys.stdin.readline().strip().split(" ") #这种方法好些
for i in range(len(aa)-1,-1,-1): # 逆序打印
#for i in range(len(aa)):
print(aa[i],end=' ') #以空格间隔
# S.join(iterable): 用于把字符串用指定的符号链接起来,返回字符串格式
# S:需要的分隔符
# iterable:被分割对象
# print(" ".join(sys.stdin.readline().strip().split(" ")[::-1])) #可以*********************************************************************
join() 方法:用于将序列中的元素以指定的字符连接生成一个新的字符串。
str = "-";
seq = ("a", "b", "c"); #字符串序列
print str.join( seq );
结果:a-b-c
str.join(sequence)
list=['1','2','3','4','5']
print(''.join(list)) # ‘’表示无空格
结果:12345
*********************************************************************
#map(func,list) 有两个参数,前面一个是函数,后面一个是序列。该函数的意义是对一个序列进行前面参数函数的操作,然后返回一个新的list。
# line= map(int,input("enter character:").split()) # 把一个字符串分割成字符串数组
line= map(int,input().split()) # map类型,要转换为list, 或者用for循环,才能打印出数字,或者字符。
line= list(line)
# line= [i for i in line] # 和上面相同效果 ,<class 'list'>print((line))
*******************************************************************
# length = len(character)
# print(length)
# print(character[length-1])# print(character[-1]) #和上面效果相同
*******************************************************************
string = sys.stdin.readline().strip().split() # <class 'list'>
num = 0方法一:
for i in string[0]:
# print("序号:%s 值:%s" % (string[0].index(i)+1,i))
if i==string[1]:
num=num+1elif chr(ord(val)-32)==string[1]: #大小写转换
num=num+1
elif chr(ord(val)+32)==string[1]: #大小写转换
num=num+1print(num)
方法二:
for i, val in enumerate(string):
print("序号:%s 值:%s" % (i + 1, val))
if val==string[1]:
num=num+1
print(num)方法三:
for i in range(len(string[0])):
if string[0][i]==(string[1]):
num=num+1 chr(x ) 将一个整数转换为一个字符
ord(x ) 将一个字符转换为它的整数值
chr(65)='A'
ord('A')=65
# upper() 方法将字符串中的小写字母转为大写字母;
# lower() 方法转换字符串中所有大写字符为小写字母;# capitalize()将字符串的第一个字母变成大写,其他字母变小写;
# title() 方法返回"标题化"的字符串,就是说所有单词都是以大写开始,其余字母均为小写。*******************************************************************
sort 与 sorted 区别:
sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。
list 的 sort 方法返回的是对已经存在的列表进行操作,无返回值,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。
sorted(students, reverse=True) # 按降序 False-升序(默认)
while True:
try:
n=int(input())
r=[]
for i in range(n):
r.append(int(input()))
print(r)
for i in sorted(set(r),reverse=False): # sorted(r,reverse=True), set()可以去掉重复的数字
print(i)
except:
break*****************************************************************************
函数调用:把b.py中的代码封装成一个函数,在文件夹下新建c.py,通过c.py来调用b.py中封装的函数,目录如下:
├── a
│ ├── a.py
│ └── __init__.py
├── b
│ ├── b.py
│ └── __init__.py
└── c.py
a.py文件:
# coding=utf-8
def a():
print("I am apple")
if __name__ == "__main__":
a()b.py文件:
# coding=utf-8
from a import a
def b():
print("I am bob")
a()
if __name__ == "__main__":
b()c.py文件:
# coding=utf-8
import sys# b的路径(绝对路径),当c与a和b在不同路径下时使用。
sys.path.append("C:/Users/Administrator/Desktop/Python程序") from b import b
b()
print("I am cc")
# sys添加路径
# 将想要用的文件所在目录path添加到系统路径(绝对路径)
# import sys
# sys.path.append(path)***************************************************************